Gerbil: a fast and memory-efficient k-mer counter with GPU-support

Abstract Background A basic task in bioinformatics is the counting of k-mers in genome sequences. Existing k-mer counting tools are most often optimized for small k < 32 and suffer from excessive memory resource consumption or degrading performance for large k. However, given the technology trend...

Full description

Bibliographic Details
Main Authors: Marius Erbert, Steffen Rechner, Matthias Müller-Hannemann
Format: Article
Language:English
Published: BMC 2017-03-01
Series:Algorithms for Molecular Biology
Subjects:
Online Access:http://link.springer.com/article/10.1186/s13015-017-0097-9
id doaj-e843c8efe97846279444831cdfac9c14
record_format Article
spelling doaj-e843c8efe97846279444831cdfac9c142020-11-25T00:37:55ZengBMCAlgorithms for Molecular Biology1748-71882017-03-0112111210.1186/s13015-017-0097-9Gerbil: a fast and memory-efficient k-mer counter with GPU-supportMarius Erbert0Steffen Rechner1Matthias Müller-Hannemann2Institute of Computer Science, Martin Luther University Halle-WittenbergInstitute of Computer Science, Martin Luther University Halle-WittenbergInstitute of Computer Science, Martin Luther University Halle-WittenbergAbstract Background A basic task in bioinformatics is the counting of k-mers in genome sequences. Existing k-mer counting tools are most often optimized for small k < 32 and suffer from excessive memory resource consumption or degrading performance for large k. However, given the technology trend towards long reads of next-generation sequencers, support for large k becomes increasingly important. Results We present the open source k-mer counting software Gerbil that has been designed for the efficient counting of k-mers for k ≥ 32. Our software is the result of an intensive process of algorithm engineering. It implements a two-step approach. In the first step, genome reads are loaded from disk and redistributed to temporary files. In a second step, the k-mers of each temporary file are counted via a hash table approach. In addition to its basic functionality, Gerbil can optionally use GPUs to accelerate the counting step. In a set of experiments with real-world genome data sets, we show that Gerbil is able to efficiently support both small and large k. Conclusions While Gerbil’s performance is comparable to existing state-of-the-art open source k-mer counting tools for small k < 32, it vastly outperforms its competitors for large k, thereby enabling new applications which require large values of k.http://link.springer.com/article/10.1186/s13015-017-0097-9k-mer countingde novo assemblyGenome sequencesGPU computingAlgorithm engineering
collection DOAJ
language English
format Article
sources DOAJ
author Marius Erbert
Steffen Rechner
Matthias Müller-Hannemann
spellingShingle Marius Erbert
Steffen Rechner
Matthias Müller-Hannemann
Gerbil: a fast and memory-efficient k-mer counter with GPU-support
Algorithms for Molecular Biology
k-mer counting
de novo assembly
Genome sequences
GPU computing
Algorithm engineering
author_facet Marius Erbert
Steffen Rechner
Matthias Müller-Hannemann
author_sort Marius Erbert
title Gerbil: a fast and memory-efficient k-mer counter with GPU-support
title_short Gerbil: a fast and memory-efficient k-mer counter with GPU-support
title_full Gerbil: a fast and memory-efficient k-mer counter with GPU-support
title_fullStr Gerbil: a fast and memory-efficient k-mer counter with GPU-support
title_full_unstemmed Gerbil: a fast and memory-efficient k-mer counter with GPU-support
title_sort gerbil: a fast and memory-efficient k-mer counter with gpu-support
publisher BMC
series Algorithms for Molecular Biology
issn 1748-7188
publishDate 2017-03-01
description Abstract Background A basic task in bioinformatics is the counting of k-mers in genome sequences. Existing k-mer counting tools are most often optimized for small k < 32 and suffer from excessive memory resource consumption or degrading performance for large k. However, given the technology trend towards long reads of next-generation sequencers, support for large k becomes increasingly important. Results We present the open source k-mer counting software Gerbil that has been designed for the efficient counting of k-mers for k ≥ 32. Our software is the result of an intensive process of algorithm engineering. It implements a two-step approach. In the first step, genome reads are loaded from disk and redistributed to temporary files. In a second step, the k-mers of each temporary file are counted via a hash table approach. In addition to its basic functionality, Gerbil can optionally use GPUs to accelerate the counting step. In a set of experiments with real-world genome data sets, we show that Gerbil is able to efficiently support both small and large k. Conclusions While Gerbil’s performance is comparable to existing state-of-the-art open source k-mer counting tools for small k < 32, it vastly outperforms its competitors for large k, thereby enabling new applications which require large values of k.
topic k-mer counting
de novo assembly
Genome sequences
GPU computing
Algorithm engineering
url http://link.springer.com/article/10.1186/s13015-017-0097-9
work_keys_str_mv AT mariuserbert gerbilafastandmemoryefficientkmercounterwithgpusupport
AT steffenrechner gerbilafastandmemoryefficientkmercounterwithgpusupport
AT matthiasmullerhannemann gerbilafastandmemoryefficientkmercounterwithgpusupport
_version_ 1725298964953038848