Closed notestaff closed 5 years ago
@marekkokot also, it seems multiple threads are used despite -t1?
@marekkokot here are the same issues on a (minimal) non-empty fasta. also, why does it say "Total no. of sequences : 2", when there is only one sequence? thanks for looking into these things!
(master_env_v17) [12:58] /data/sw/KMC $ echo '>rec' > almost_empty.fasta
(master_env_v17) [12:59] /data/sw/KMC $ echo A >> almost_empty.fasta
(master_env_v17) [12:59] /data/sw/KMC $ valgrind --track-origins=yes --leak-check=full bin/kmc -v -t1 -fm almost_empty.fasta almost_empty_db /tmp
==8281== Memcheck, a memory error detector
==8281== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==8281== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==8281== Command: bin/kmc -v -t1 -fm almost_empty.fasta almost_empty_db /tmp
==8281==
==8281== Warning: set address range perms: large range [0x60ba040, 0x360ba080) (undefined)
==8281== Warning: set address range perms: large range [0x59e43040, 0x292ab3080) (undefined)
==8281== Warning: set address range perms: large range [0x292ab4040, 0x2f50d4080) (undefined)
==8281== Thread 3:
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x632592: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:397)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902)
==8281== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60)
==8281== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95)
==8281== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243)
==8281== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x63264C: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902)
==8281== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60)
==8281== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95)
==8281== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243)
==8281== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x632665: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902)
==8281== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60)
==8281== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95)
==8281== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243)
==8281== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Thread 2:
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x419900: CSplitter
** Used parameters: ** No. of input files : 1 Output file name : almost_empty_db No. of working directories : 1 Input format : MULTI LINE FASTA
k-mer length : 25 Max. k-mer length : 256 Signature length : 9 Min. count threshold : 2 Max. count threshold : 1000000000 Max. counter value : 255 Type of counters : direct Both strands : true RAM only mode : false
Stage 1 configuration:
No. of bins : 512 Bin part size : 65536 Input buffer size : 16777216
No. of readers : 1 No. of splitters : 1
Max. mem. size : 12000MB Max. mem. per storer : 6202MB Max. mem. for single package : 24MB
Max. mem. for PMM (bin parts): 9542MB Max. mem. for PMM (FASTQ) : 1650MB Max. mem. for PMM (reads) : 1MB Max. mem. for PMM (b. reader): 805MB
Stage 1: 100%==8281== Thread 4:
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x632592: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:397)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852)
==8281== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60)
==8281== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95)
==8281== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243)
==8281== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x63264C: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852)
==8281== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60)
==8281== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95)
==8281== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243)
==8281== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x632665: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409)
==8281== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438)
==8281== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852)
==8281== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60)
==8281== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95)
==8281== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==8281== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243)
==8281== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186)
==8281== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==8281== by 0x56D8DE4: start_thread (pthread_create.c:308)
==8281== by 0x59EBBAC: clone (clone.S:113)
==8281== Uninitialised value was created by a heap allocation
==8281== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==8281== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==8281== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==8281== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==8281== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==8281==
==8281== Thread 2:
==8281== Conditional jump or move depends on uninitialised value(s)
==8281== at 0x419900: CSplitter
==8281== Warning: set address range perms: large range [0x59e43028, 0x292ab3098) (noaccess)
Stage 2 configuration: No. of threads : 1
Max. mem. for 2nd stage : 16MB
Stage 2: 100% ==8281== Thread 1: ==8281== Conditional jump or move depends on uninitialised value(s) ==8281== at 0x6383DA: CStopWatch::getElapsedTime() (timer.cpp:118) ==8281== by 0x50B17F: CKMC<CKmer<1u>, 1u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmc.h:1441) ==8281== by 0x4DC055: CApplication<CKmer, 1u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:121) ==8281== by 0x4B16A2: CApplication<CKmer, 2u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x48E5F0: CApplication<CKmer, 3u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x46C1DE: CApplication<CKmer, 4u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x44EFF2: CApplication<CKmer, 5u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x435CA8: CApplication<CKmer, 6u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x425EF0: CApplication<CKmer, 7u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x41B304: CApplication<CKmer, 8u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==8281== by 0x4075E8: main (kmer_counter.cpp:522) ==8281== Uninitialised value was created by a heap allocation ==8281== at 0x4C291EA: operator new(unsigned long) (vg_replace_malloc.c:334) ==8281== by 0x4B29FE: CApplication<CKmer, 1u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:104) ==8281== by 0x48FF0F: CApplication<CKmer, 2u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x46E7CD: CApplication<CKmer, 3u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x45231B: CApplication<CKmer, 4u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x43A6C3: CApplication<CKmer, 5u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x42C58B: CApplication<CKmer, 6u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x4206EF: CApplication<CKmer, 7u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x41B129: CApplication<CKmer, 8u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==8281== by 0x407540: main (kmer_counter.cpp:514) ==8281== 1st stage: 574.805s 2nd stage: 41.3229s Total : 616.128s Tmp size : 0MB
Stats: No. of k-mers below min. threshold : 0 No. of k-mers above max. threshold : 0 No. of unique k-mers : 0 No. of unique counted k-mers : 0 Total no. of k-mers : 0 Total no. of sequences : 2 Total no. of super-k-mers : 0 ==8281== ==8281== HEAP SUMMARY: ==8281== in use at exit: 47,628 bytes in 1,024 blocks ==8281== total heap usage: 332,031 allocs, 331,007 frees, 12,082,269,453 bytes allocated ==8281== ==8281== 47,628 (24,576 direct, 23,052 indirect) bytes in 512 blocks are definitely lost in loss record 3 of 3 ==8281== at 0x4C291EA: operator new(unsigned long) (vg_replace_malloc.c:334) ==8281== by 0x63BEED: CKmerBinStorer::OpenFiles() (kb_storer.cpp:188) ==8281== by 0x63C32A: CWKmerBinStorer::CWKmerBinStorer(CKMCParams&, CKMCQueues&) (kb_storer.cpp:255) ==8281== by 0x50806F: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:973) ==8281== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==8281== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==8281== by 0x41B1EE: CApplication<CKmer, 8u, false>::Process() (kmer_counter.cpp:87) ==8281== ==8281== LEAK SUMMARY: ==8281== definitely lost: 24,576 bytes in 512 blocks ==8281== indirectly lost: 23,052 bytes in 512 blocks ==8281== possibly lost: 0 bytes in 0 blocks ==8281== still reachable: 0 bytes in 0 blocks ==8281== suppressed: 0 bytes in 0 blocks ==8281== ==8281== For counts of detected and suppressed errors, rerun with: -v ==8281== ERROR SUMMARY: 184 errors from 14 contexts (suppressed: 0 from 0) (master_env_v17) [13:10] /data/sw/KMC $
Finally, I have used valgrind. Two sequences was incorrect result of the "Conditional jump or move depends on uninitialised value(s)". Fixes are in commits: 4712afcb3639dfcc50d37cff8e9349cc971bc8af and aae552e4a406c220b2b140df83ccfe1485b80e9d
Now running valgrind on empty.fasta shows:
==15540== Memcheck, a memory error detector
==15540== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==15540== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright info
==15540== Command: bin/kmc -v -t1 -fm empty.fasta empty_db .
==15540==
==15540== Warning: set address range perms: large range [0x6091040, 0x36091080) (undefined)
==15540== Warning: set address range perms: large range [0x395f8040, 0x272268080) (undefined)
==15540== Warning: set address range perms: large range [0x2de669040, 0x340c89080) (undefined)
**
********** Used parameters: **********
No. of input files : 1
Output file name : empty_db
No. of working directories : 1
Input format : MULTI LINE FASTA
k-mer length : 25
Max. k-mer length : 64
Signature length : 9
Min. count threshold : 2
Max. count threshold : 1000000000
Max. counter value : 255
Type of counters : direct
Both strands : true
RAM only mode : false
******* Stage 1 configuration: *******
No. of bins : 512
Bin part size : 65536
Input buffer size : 16777216
No. of readers : 1
No. of splitters : 1
Max. mem. size : 12000MB
Max. mem. per storer : 6202MB
Max. mem. for single package : 24MB
Max. mem. for PMM (bin parts): 9542MB
Max. mem. for PMM (FASTQ) : 1650MB
Max. mem. for PMM (reads) : 1MB
Max. mem. for PMM (b. reader): 805MB
Stage 1: 100%==15540== Warning: set address range perms: large range [0x2de669028, 0x340c89098) (noaccess)
==15540== Warning: set address range perms: large range [0x6091028, 0x36091098) (noaccess)
==15540== Warning: set address range perms: large range [0x395f8028, 0x272268098) (noaccess)
******* Stage 2 configuration: *******
No. of threads : 1
Max. mem. for 2nd stage : 16MB
Stage 2: 100%
1st stage: 482.088s
2nd stage: 3.82243s
Total : 485.911s
Tmp size : 0MB
Stats:
No. of k-mers below min. threshold : 0
No. of k-mers above max. threshold : 0
No. of unique k-mers : 0
No. of unique counted k-mers : 0
Total no. of k-mers : 0
Total no. of sequences : 0
Total no. of super-k-mers : 0
==15540==
==15540== HEAP SUMMARY:
==15540== in use at exit: 0 bytes in 0 blocks
==15540== total heap usage: 325,129 allocs, 325,129 frees, 12,082,110,610 bytes allocated
==15540==
==15540== All heap blocks were freed -- no leaks are possible
==15540==
==15540== For counts of detected and suppressed errors, rerun with: -v
==15540== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
And on almost empty (a little different)
>
AA
it shows:
==15592== Memcheck, a memory error detector
==15592== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==15592== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright info
==15592== Command: bin/kmc -v -t1 -fm almost_empty.fa empty_db .
==15592==
==15592== Warning: set address range perms: large range [0x6091040, 0x36091080) (undefined)
==15592== Warning: set address range perms: large range [0x395f8040, 0x272268080) (undefined)
==15592== Warning: set address range perms: large range [0x2de669040, 0x340c89080) (undefined)
**
********** Used parameters: **********
No. of input files : 1
Output file name : empty_db
No. of working directories : 1
Input format : MULTI LINE FASTA
k-mer length : 25
Max. k-mer length : 64
Signature length : 9
Min. count threshold : 2
Max. count threshold : 1000000000
Max. counter value : 255
Type of counters : direct
Both strands : true
RAM only mode : false
******* Stage 1 configuration: *******
No. of bins : 512
Bin part size : 65536
Input buffer size : 16777216
No. of readers : 1
No. of splitters : 1
Max. mem. size : 12000MB
Max. mem. per storer : 6202MB
Max. mem. for single package : 24MB
Max. mem. for PMM (bin parts): 9542MB
Max. mem. for PMM (FASTQ) : 1650MB
Max. mem. for PMM (reads) : 1MB
Max. mem. for PMM (b. reader): 805MB
Stage 1: 0%
Stage 1: 100%==15592== Warning: set address range perms: large range [0x2de669028, 0x340c89098) (noaccess)
==15592== Warning: set address range perms: large range [0x6091028, 0x36091098) (noaccess)
==15592== Warning: set address range perms: large range [0x395f8028, 0x272268098) (noaccess)
******* Stage 2 configuration: *******
No. of threads : 1
Max. mem. for 2nd stage : 16MB
Stage 2: 100%
1st stage: 478.172s
2nd stage: 3.58126s
Total : 481.754s
Tmp size : 0MB
Stats:
No. of k-mers below min. threshold : 0
No. of k-mers above max. threshold : 0
No. of unique k-mers : 0
No. of unique counted k-mers : 0
Total no. of k-mers : 0
Total no. of sequences : 1
Total no. of super-k-mers : 0
==15592==
==15592== HEAP SUMMARY:
==15592== in use at exit: 0 bytes in 0 blocks
==15592== total heap usage: 325,129 allocs, 325,129 frees, 12,082,110,610 bytes allocated
==15592==
==15592== All heap blocks were freed -- no leaks are possible
==15592==
==15592== For counts of detected and suppressed errors, rerun with: -v
==15592== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Memory leaks was also fixed.
The settings of threads in kmc works as follows:
There are some threads that are not CPU intensive (e.g. disk access), they are created always. The -ttaskset
linux command should be used.
@marekkokot the errors below are illustrated on an empty fasta as the smallest reproducible case, but they also happen on non-empty files.
(master_env_v17) [12:18] /data/sw/KMC $ rm -f empty.fasta && touch empty.fasta (master_env_v17) [12:18] /data/sw/KMC $ valgrind --track-origins=yes --leak-check=full bin/kmc -v -t1 -fm empty.fasta empty_db /tmp ==6853== Memcheck, a memory error detector ==6853== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==6853== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==6853== Command: bin/kmc -v -t1 -fm empty.fasta empty_db /tmp ==6853== ==6853== Warning: set address range perms: large range [0x60ba040, 0x360ba080) (undefined) ==6853== Warning: set address range perms: large range [0x59e43040, 0x292ab3080) (undefined) ==6853== Warning: set address range perms: large range [0x292ab4040, 0x2f50d4080) (undefined) ==6853== Thread 3: ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x632592: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:397) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902) ==6853== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60) ==6853== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95) ==6853== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243) ==6853== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x63264C: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902) ==6853== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60) ==6853== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95) ==6853== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243) ==6853== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x632665: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633CC2: CWStatsFastqReader::operator()() (fastq_reader.cpp:902) ==6853== by 0x43F193: void std::invoke_impl<void, CWStatsFastqReader&>(std::__invoke_other, CWStatsFastqReader&) (invoke.h:60) ==6853== by 0x42E81A: std::invoke_result<CWStatsFastqReader&>::type std::invoke<CWStatsFastqReader&>(CWStatsFastqReader&) (invoke.h:95) ==6853== by 0x627CAB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x625988: std::thread::_Invoker<std::tuple<CWStatsFastqReader&> >::operator()() (thread:243) ==6853== by 0x623A7F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Thread 2: ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x419900: CSplitter::GetSeq(char , unsigned int&) (splitter.h:249)
==6853== by 0x4716EB: CSplitter::CalcStats(unsigned char, unsigned long long, unsigned int) (splitter.h:474)
==6853== by 0x456A22: CWStatsSplitter::operator()() (splitter.h:1325)
==6853== by 0x43ED43: void std::invoke_impl<void, CWStatsSplitter&>(std::__invoke_other, CWStatsSplitter&) (invoke.h:60)
==6853== by 0x42E660: std:: invoke_result<CWStatsSplitter&>::type std::invoke<CWStatsSplitter&>(CWStatsSplitter&) (invoke.h:95)
==6853== by 0x627CD7: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x6259AC: std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::operator()() (thread:243)
==6853== by 0x623A9F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
==6853== Conditional jump or move depends on uninitialised value(s)
==6853== at 0x419A18: CSplitter::GetSeq(char, unsigned int&) (splitter.h:257)
==6853== by 0x4716EB: CSplitter::CalcStats(unsigned char , unsigned long long, unsigned int) (splitter.h:474)
==6853== by 0x456A22: CWStatsSplitter::operator()() (splitter.h:1325)
==6853== by 0x43ED43: void std::invoke_impl<void, CWStatsSplitter&>(std::__invoke_other, CWStatsSplitter&) (invoke.h:60)
==6853== by 0x42E660: std:: invoke_result<CWStatsSplitter&>::type std::invoke<CWStatsSplitter&>(CWStatsSplitter&) (invoke.h:95)
==6853== by 0x627CD7: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x6259AC: std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::operator()() (thread:243)
==6853== by 0x623A9F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
==6853== Use of uninitialised value of size 8
==6853== at 0x419A59: CSplitter::GetSeq(char , unsigned int&) (splitter.h:259)
==6853== by 0x4716EB: CSplitter::CalcStats(unsigned char, unsigned long long, unsigned int) (splitter.h:474)
==6853== by 0x456A22: CWStatsSplitter::operator()() (splitter.h:1325)
==6853== by 0x43ED43: void std::invoke_impl<void, CWStatsSplitter&>(std::__invoke_other, CWStatsSplitter&) (invoke.h:60)
==6853== by 0x42E660: std:: invoke_result<CWStatsSplitter&>::type std::invoke<CWStatsSplitter&>(CWStatsSplitter&) (invoke.h:95)
==6853== by 0x627CD7: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x6259AC: std::thread::_Invoker<std::tuple<CWStatsSplitter&> >::operator()() (thread:243)
==6853== by 0x623A9F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWStatsSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
*
** Used parameters: ** No. of input files : 1 Output file name : empty_db No. of working directories : 1 Input format : MULTI LINE FASTA
k-mer length : 25 Max. k-mer length : 256 Signature length : 9 Min. count threshold : 2 Max. count threshold : 1000000000 Max. counter value : 255 Type of counters : direct Both strands : true RAM only mode : false
Stage 1 configuration:
No. of bins : 512 Bin part size : 65536 Input buffer size : 16777216
No. of readers : 1 No. of splitters : 1
Max. mem. size : 12000MB Max. mem. per storer : 6202MB Max. mem. for single package : 24MB
Max. mem. for PMM (bin parts): 9542MB Max. mem. for PMM (FASTQ) : 1650MB Max. mem. for PMM (reads) : 1MB Max. mem. for PMM (b. reader): 805MB
Stage 1: 100%==6853== Thread 4: ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x632592: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:397) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852) ==6853== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60) ==6853== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95) ==6853== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243) ==6853== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x63264C: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852) ==6853== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60) ==6853== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95) ==6853== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243) ==6853== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x632665: CFastqReader::GetPartFromMultilneFasta(unsigned char&, unsigned long long&) (fastq_reader.cpp:409) ==6853== by 0x632838: CFastqReader::GetPartNew(unsigned char&, unsigned long long&) (fastq_reader.cpp:438) ==6853== by 0x633A9D: CWFastqReader::operator()() (fastq_reader.cpp:852) ==6853== by 0x43FFD1: void std::invoke_impl<void, CWFastqReader&>(std::__invoke_other, CWFastqReader&) (invoke.h:60) ==6853== by 0x42F6DA: std::invoke_result<CWFastqReader&>::type std::invoke<CWFastqReader&>(CWFastqReader&) (invoke.h:95) ==6853== by 0x627BFB: decltype (invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWFastqReader&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234) ==6853== by 0x6258F8: std::thread::_Invoker<std::tuple<CWFastqReader&> >::operator()() (thread:243) ==6853== by 0x6239FF: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWFastqReader&> > >::_M_run() (thread:186) ==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83) ==6853== by 0x56D8DE4: start_thread (pthread_create.c:308) ==6853== by 0x59EBBAC: clone (clone.S:113) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423) ==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858) ==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843) ==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986) ==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== Thread 2: ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x419900: CSplitter::GetSeq(char, unsigned int&) (splitter.h:249)
==6853== by 0x404911: CSplitter_Impl::ProcessReads(CSplitter&, unsigned char , unsigned long long) (splitter.h:806)
==6853== by 0x471E36: CSplitter::ProcessReads(unsigned char, unsigned long long) (splitter.h:640)
==6853== by 0x4570D3: CWSplitter::operator()() (splitter.h:1248)
==6853== by 0x43F9A7: void std::invoke_impl<void, CWSplitter&>(std::__invoke_other, CWSplitter&) (invoke.h:60)
==6853== by 0x42F412: std:: invoke_result<CWSplitter&>::type std::invoke<CWSplitter&>(CWSplitter&) (invoke.h:95)
==6853== by 0x627C53: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x625940: std::thread::_Invoker<std::tuple<CWSplitter&> >::operator()() (thread:243)
==6853== by 0x623A3F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
==6853== Conditional jump or move depends on uninitialised value(s)
==6853== at 0x419A18: CSplitter::GetSeq(char , unsigned int&) (splitter.h:257)
==6853== by 0x404911: CSplitter_Impl::ProcessReads(CSplitter&, unsigned char, unsigned long long) (splitter.h:806)
==6853== by 0x471E36: CSplitter::ProcessReads(unsigned char , unsigned long long) (splitter.h:640)
==6853== by 0x4570D3: CWSplitter::operator()() (splitter.h:1248)
==6853== by 0x43F9A7: void std::invoke_impl<void, CWSplitter&>(std::__invoke_other, CWSplitter&) (invoke.h:60)
==6853== by 0x42F412: std:: invoke_result<CWSplitter&>::type std::invoke<CWSplitter&>(CWSplitter&) (invoke.h:95)
==6853== by 0x627C53: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x625940: std::thread::_Invoker<std::tuple<CWSplitter&> >::operator()() (thread:243)
==6853== by 0x623A3F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
==6853== Use of uninitialised value of size 8
==6853== at 0x419A59: CSplitter::GetSeq(char, unsigned int&) (splitter.h:259)
==6853== by 0x404911: CSplitter_Impl::ProcessReads(CSplitter&, unsigned char , unsigned long long) (splitter.h:806)
==6853== by 0x471E36: CSplitter::ProcessReads(unsigned char*, unsigned long long) (splitter.h:640)
==6853== by 0x4570D3: CWSplitter::operator()() (splitter.h:1248)
==6853== by 0x43F9A7: void std::invoke_impl<void, CWSplitter&>(std::__invoke_other, CWSplitter&) (invoke.h:60)
==6853== by 0x42F412: std:: invoke_result<CWSplitter&>::type std::invoke<CWSplitter&>(CWSplitter&) (invoke.h:95)
==6853== by 0x627C53: decltype ( invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<CWSplitter&> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) (thread:234)
==6853== by 0x625940: std::thread::_Invoker<std::tuple<CWSplitter&> >::operator()() (thread:243)
==6853== by 0x623A3F: std::thread::_State_impl<std::thread::_Invoker<std::tuple<CWSplitter&> > >::_M_run() (thread:186)
==6853== by 0x4EEF4FE: execute_native_thread_routine (thread.cc:83)
==6853== by 0x56D8DE4: start_thread (pthread_create.c:308)
==6853== by 0x59EBBAC: clone (clone.S:113)
==6853== Uninitialised value was created by a heap allocation
==6853== at 0x4C298D7: operator new[](unsigned long) (vg_replace_malloc.c:423)
==6853== by 0x40AE14: CMemoryPool::prepare(long long, long long) (queues.h:858)
==6853== by 0x40AD27: CMemoryPool::CMemoryPool(long long, long long) (queues.h:843)
==6853== by 0x40B698: CMemoryPoolWithBamSupport::CMemoryPoolWithBamSupport(long long, long long) (queues.h:986)
==6853== by 0x50752B: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:871)
==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134)
==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87)
==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87)
==6853==
==6853== Warning: set address range perms: large range [0x292ab4028, 0x2f50d4098) (noaccess)
==6853== Warning: set address range perms: large range [0x60ba028, 0x360ba098) (noaccess)
==6853== Warning: set address range perms: large range [0x59e43028, 0x292ab3098) (noaccess)
Stage 2 configuration: No. of threads : 1
Max. mem. for 2nd stage : 16MB
Stage 2: 100% ==6853== Thread 1: ==6853== Conditional jump or move depends on uninitialised value(s) ==6853== at 0x6383DA: CStopWatch::getElapsedTime() (timer.cpp:118) ==6853== by 0x50B17F: CKMC<CKmer<1u>, 1u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmc.h:1441) ==6853== by 0x4DC055: CApplication<CKmer, 1u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:121) ==6853== by 0x4B16A2: CApplication<CKmer, 2u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x48E5F0: CApplication<CKmer, 3u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x46C1DE: CApplication<CKmer, 4u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x44EFF2: CApplication<CKmer, 5u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x435CA8: CApplication<CKmer, 6u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x425EF0: CApplication<CKmer, 7u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x41B304: CApplication<CKmer, 8u, false>::GetStats(double&, double&, double&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&) (kmer_counter.cpp:78) ==6853== by 0x4075E8: main (kmer_counter.cpp:522) ==6853== Uninitialised value was created by a heap allocation ==6853== at 0x4C291EA: operator new(unsigned long) (vg_replace_malloc.c:334) ==6853== by 0x4B29FE: CApplication<CKmer, 1u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:104) ==6853== by 0x48FF0F: CApplication<CKmer, 2u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x46E7CD: CApplication<CKmer, 3u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x45231B: CApplication<CKmer, 4u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x43A6C3: CApplication<CKmer, 5u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x42C58B: CApplication<CKmer, 6u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x4206EF: CApplication<CKmer, 7u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x41B129: CApplication<CKmer, 8u, false>::CApplication(CKMCParams&) (kmer_counter.cpp:47) ==6853== by 0x407540: main (kmer_counter.cpp:514) ==6853== 1st stage: 573.172s 2nd stage: 40.8551s Total : 614.027s Tmp size : 0MB
Stats: No. of k-mers below min. threshold : 0 No. of k-mers above max. threshold : 0 No. of unique k-mers : 0 No. of unique counted k-mers : 0 Total no. of k-mers : 0 Total no. of sequences : 0 Total no. of super-k-mers : 0 ==6853== ==6853== HEAP SUMMARY: ==6853== in use at exit: 47,628 bytes in 1,024 blocks ==6853== total heap usage: 332,029 allocs, 331,005 frees, 12,082,269,291 bytes allocated ==6853== ==6853== 47,628 (24,576 direct, 23,052 indirect) bytes in 512 blocks are definitely lost in loss record 3 of 3 ==6853== at 0x4C291EA: operator new(unsigned long) (vg_replace_malloc.c:334) ==6853== by 0x63BEED: CKmerBinStorer::OpenFiles() (kb_storer.cpp:188) ==6853== by 0x63C32A: CWKmerBinStorer::CWKmerBinStorer(CKMCParams&, CKMCQueues&) (kb_storer.cpp:255) ==6853== by 0x50806F: CKMC<CKmer<1u>, 1u, false>::Process() (kmc.h:973) ==6853== by 0x4DBD24: CApplication<CKmer, 1u, false>::Process() (kmer_counter.cpp:134) ==6853== by 0x4B131C: CApplication<CKmer, 2u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x48E26A: CApplication<CKmer, 3u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x46BE58: CApplication<CKmer, 4u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x44EC6C: CApplication<CKmer, 5u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x435922: CApplication<CKmer, 6u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x425B6A: CApplication<CKmer, 7u, false>::Process() (kmer_counter.cpp:87) ==6853== by 0x41B1EE: CApplication<CKmer, 8u, false>::Process() (kmer_counter.cpp:87) ==6853== ==6853== LEAK SUMMARY: ==6853== definitely lost: 24,576 bytes in 512 blocks ==6853== indirectly lost: 23,052 bytes in 512 blocks ==6853== possibly lost: 0 bytes in 0 blocks ==6853== still reachable: 0 bytes in 0 blocks ==6853== suppressed: 0 bytes in 0 blocks ==6853== ==6853== For counts of detected and suppressed errors, rerun with: -v ==6853== ERROR SUMMARY: 244 errors from 14 contexts (suppressed: 0 from 0)