Cargando…
Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs
MOTIVATION: Pairwise sequence alignment is a very time-consuming step in common bioinformatics pipelines. Speeding up this step requires heuristics, efficient implementations, and/or hardware acceleration. A promising candidate for all of the above is the recently proposed GenASM algorithm. We ident...
Autores principales: | , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Oxford University Press
2023
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10191611/ https://www.ncbi.nlm.nih.gov/pubmed/36961334 http://dx.doi.org/10.1093/bioinformatics/btad151 |
_version_ | 1785043499923537920 |
---|---|
author | Lindegger, Joël Senol Cali, Damla Alser, Mohammed Gómez-Luna, Juan Ghiasi, Nika Mansouri Mutlu, Onur |
author_facet | Lindegger, Joël Senol Cali, Damla Alser, Mohammed Gómez-Luna, Juan Ghiasi, Nika Mansouri Mutlu, Onur |
author_sort | Lindegger, Joël |
collection | PubMed |
description | MOTIVATION: Pairwise sequence alignment is a very time-consuming step in common bioinformatics pipelines. Speeding up this step requires heuristics, efficient implementations, and/or hardware acceleration. A promising candidate for all of the above is the recently proposed GenASM algorithm. We identify and address three inefficiencies in the GenASM algorithm: it has a high amount of data movement, a large memory footprint, and does some unnecessary work. RESULTS: We propose Scrooge, a fast and memory-frugal genomic sequence aligner. Scrooge includes three novel algorithmic improvements which reduce the data movement, memory footprint, and the number of operations in the GenASM algorithm. We provide efficient open-source implementations of the Scrooge algorithm for CPUs and GPUs, which demonstrate the significant benefits of our algorithmic improvements. For long reads, the CPU version of Scrooge achieves a 20.1 [Formula: see text] , 1.7 [Formula: see text] , and 2.1 [Formula: see text] speedup over KSW2, Edlib, and a CPU implementation of GenASM, respectively. The GPU version of Scrooge achieves a 4.0 [Formula: see text] , 80.4 [Formula: see text] , 6.8 [Formula: see text] , 12.6 [Formula: see text] , and 5.9 [Formula: see text] speedup over the CPU version of Scrooge, KSW2, Edlib, Darwin-GPU, and a GPU implementation of GenASM, respectively. We estimate an ASIC implementation of Scrooge to use 3.6 [Formula: see text] less chip area and 2.1 [Formula: see text] less power than a GenASM ASIC while maintaining the same throughput. Further, we systematically analyze the throughput and accuracy behavior of GenASM and Scrooge under various configurations. As the best configuration of Scrooge depends on the computing platform, we make several observations that can help guide future implementations of Scrooge. AVAILABILITY AND IMPLEMENTATION: https://github.com/CMU-SAFARI/Scrooge. |
format | Online Article Text |
id | pubmed-10191611 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2023 |
publisher | Oxford University Press |
record_format | MEDLINE/PubMed |
spelling | pubmed-101916112023-05-18 Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs Lindegger, Joël Senol Cali, Damla Alser, Mohammed Gómez-Luna, Juan Ghiasi, Nika Mansouri Mutlu, Onur Bioinformatics Original Paper MOTIVATION: Pairwise sequence alignment is a very time-consuming step in common bioinformatics pipelines. Speeding up this step requires heuristics, efficient implementations, and/or hardware acceleration. A promising candidate for all of the above is the recently proposed GenASM algorithm. We identify and address three inefficiencies in the GenASM algorithm: it has a high amount of data movement, a large memory footprint, and does some unnecessary work. RESULTS: We propose Scrooge, a fast and memory-frugal genomic sequence aligner. Scrooge includes three novel algorithmic improvements which reduce the data movement, memory footprint, and the number of operations in the GenASM algorithm. We provide efficient open-source implementations of the Scrooge algorithm for CPUs and GPUs, which demonstrate the significant benefits of our algorithmic improvements. For long reads, the CPU version of Scrooge achieves a 20.1 [Formula: see text] , 1.7 [Formula: see text] , and 2.1 [Formula: see text] speedup over KSW2, Edlib, and a CPU implementation of GenASM, respectively. The GPU version of Scrooge achieves a 4.0 [Formula: see text] , 80.4 [Formula: see text] , 6.8 [Formula: see text] , 12.6 [Formula: see text] , and 5.9 [Formula: see text] speedup over the CPU version of Scrooge, KSW2, Edlib, Darwin-GPU, and a GPU implementation of GenASM, respectively. We estimate an ASIC implementation of Scrooge to use 3.6 [Formula: see text] less chip area and 2.1 [Formula: see text] less power than a GenASM ASIC while maintaining the same throughput. Further, we systematically analyze the throughput and accuracy behavior of GenASM and Scrooge under various configurations. As the best configuration of Scrooge depends on the computing platform, we make several observations that can help guide future implementations of Scrooge. AVAILABILITY AND IMPLEMENTATION: https://github.com/CMU-SAFARI/Scrooge. Oxford University Press 2023-03-24 /pmc/articles/PMC10191611/ /pubmed/36961334 http://dx.doi.org/10.1093/bioinformatics/btad151 Text en © The Author(s) 2023. Published by Oxford University Press. https://creativecommons.org/licenses/by/4.0/This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited. |
spellingShingle | Original Paper Lindegger, Joël Senol Cali, Damla Alser, Mohammed Gómez-Luna, Juan Ghiasi, Nika Mansouri Mutlu, Onur Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title | Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title_full | Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title_fullStr | Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title_full_unstemmed | Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title_short | Scrooge: a fast and memory-frugal genomic sequence aligner for CPUs, GPUs, and ASICs |
title_sort | scrooge: a fast and memory-frugal genomic sequence aligner for cpus, gpus, and asics |
topic | Original Paper |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10191611/ https://www.ncbi.nlm.nih.gov/pubmed/36961334 http://dx.doi.org/10.1093/bioinformatics/btad151 |
work_keys_str_mv | AT lindeggerjoel scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics AT senolcalidamla scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics AT alsermohammed scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics AT gomezlunajuan scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics AT ghiasinikamansouri scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics AT mutluonur scroogeafastandmemoryfrugalgenomicsequencealignerforcpusgpusandasics |