The rapid development of high-throughput sequencing technologies means that hundreds of gigabytes of sequencing data can be produced in a single study. Many bioinformatics tools require counts of substrings of length k in DNA/RNA sequencing reads obtained for applications such as genome and transcriptome assembly, error correction, multiple sequence alignment, and repeat detection. Recently, several techniques have been developed to count k-mers in large sequencing datasets, with a trade-off between the time and memory required to perform this function. We assessed several k-mer counting programs and evaluated their relative performance, primarily on the basis of runtime and memory usage. We also considered additional parameters such as disk usage, accuracy, parallelism, the impact of compressed input, performance in terms of counting large k values and the scalability of the application to larger datasets.We make specific recommendations for the setup of a current state-of-the-art program and suggestions for further development.
Background:
In bioinformatics, estimation of k-mer abundance histograms or just enumerating
the number of unique k-mers and the number of singletons are desirable in many genome sequence
analysis applications. The applications include predicting genome sizes, data pre-processing
for de Bruijn graph assembly methods (tune runtime parameters for analysis tools), repeat detection,
sequencing coverage estimation, measuring sequencing error rates, etc. Different methods for cardinality
estimation in sequencing data have been developed in recent years.
Objective:
In this article, we present a comparative assessment of the different k-mer frequency estimation
programs (ntCard, KmerGenie, KmerStream and Khmer (abundance-dist-single.py and
unique-kmers.py) to assess their relative merits and demerits.
Methods:
Principally, the miscounts/error-rates of these tools are analyzed by rigorous experimental
analysis for a varied range of k. We also present experimental results on runtime, scalability for larger
datasets, memory, CPU utilization as well as parallelism of k-mer frequency estimation methods.
Results:
The results indicate that ntCard is more accurate in estimating F0, f1 and full k-mer abundance
histograms compared with other methods. ntCard is the fastest but it has more memory requirements
compared to KmerGenie.
Conclusion:
The results of this evaluation may serve as a roadmap to potential users and practitioners
of streaming algorithms for estimating k-mer coverage frequencies, to assist them in identifying an
appropriate method. Such results analysis also help researchers to discover remaining open research
questions, effective combinations of existing techniques and possible avenues for future research.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.