BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization
New High-Performance Computing architectures have been recently developed for commercial central processing unit (CPU). Yet, that has not improved the execution time of widely used bioinformatics applications, like BLAST+. This is due to a lack of optimization between the bases of the existing algor...
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Frontiers Media S.A.
2021-02-01
|
Series: | Frontiers in Genetics |
Subjects: | |
Online Access: | https://www.frontiersin.org/articles/10.3389/fgene.2021.618659/full |
_version_ | 1818918556502327296 |
---|---|
author | Sergio Gálvez Federico Agostini Javier Caselli Pilar Hernandez Gabriel Dorado |
author_facet | Sergio Gálvez Federico Agostini Javier Caselli Pilar Hernandez Gabriel Dorado |
author_sort | Sergio Gálvez |
collection | DOAJ |
description | New High-Performance Computing architectures have been recently developed for commercial central processing unit (CPU). Yet, that has not improved the execution time of widely used bioinformatics applications, like BLAST+. This is due to a lack of optimization between the bases of the existing algorithms and the internals of the hardware that allows taking full advantage of the available CPU cores. To optimize the new architectures, algorithms must be revised and redesigned; usually rewritten from scratch. BLVector adapts the high-level concepts of BLAST+ to the x86 architectures with AVX-512, to harness their capabilities. A deep comprehensive study has been carried out to optimize the approach, with a significant reduction in time execution. BLVector reduces the execution time of BLAST+ when aligning up to mid-size protein sequences (∼750 amino acids). The gain in real scenario cases is 3.2-fold. When applied to longer proteins, BLVector consumes more time than BLAST+, but retrieves a much larger set of results. BLVector and BLAST+ are fine-tuned heuristics. Therefore, the relevant results returned by both are the same, although they behave differently specially when performing alignments with low scores. Hence, they can be considered complementary bioinformatics tools. |
first_indexed | 2024-12-20T00:51:50Z |
format | Article |
id | doaj.art-b491ba3509d1453da5263d222b02c1b0 |
institution | Directory Open Access Journal |
issn | 1664-8021 |
language | English |
last_indexed | 2024-12-20T00:51:50Z |
publishDate | 2021-02-01 |
publisher | Frontiers Media S.A. |
record_format | Article |
series | Frontiers in Genetics |
spelling | doaj.art-b491ba3509d1453da5263d222b02c1b02022-12-21T19:59:14ZengFrontiers Media S.A.Frontiers in Genetics1664-80212021-02-011210.3389/fgene.2021.618659618659BLVector: Fast BLAST-Like Algorithm for Manycore CPU With VectorizationSergio Gálvez0Federico Agostini1Javier Caselli2Pilar Hernandez3Gabriel Dorado4Departamento Lenguajes y Ciencias de la Computación, Universidad de Málaga, Málaga, SpainInstituto de Botánica del Nordeste (IBONE), Universidad Nacional del Nordeste, Corrientes, ArgentinaDepartamento Lenguajes y Ciencias de la Computación, Universidad de Málaga, Málaga, SpainInstituto de Agricultura Sostenible (IAS-CSIC), Consejo Superior de Investigaciones Científicas, Córdoba, SpainDepartamento Bioquímica y Biología Molecular, Campus Rabanales C6-1-E17, Campus de Excelencia Internacional Agroalimentario (ceiA3), Universidad de Córdoba, Córdoba, SpainNew High-Performance Computing architectures have been recently developed for commercial central processing unit (CPU). Yet, that has not improved the execution time of widely used bioinformatics applications, like BLAST+. This is due to a lack of optimization between the bases of the existing algorithms and the internals of the hardware that allows taking full advantage of the available CPU cores. To optimize the new architectures, algorithms must be revised and redesigned; usually rewritten from scratch. BLVector adapts the high-level concepts of BLAST+ to the x86 architectures with AVX-512, to harness their capabilities. A deep comprehensive study has been carried out to optimize the approach, with a significant reduction in time execution. BLVector reduces the execution time of BLAST+ when aligning up to mid-size protein sequences (∼750 amino acids). The gain in real scenario cases is 3.2-fold. When applied to longer proteins, BLVector consumes more time than BLAST+, but retrieves a much larger set of results. BLVector and BLAST+ are fine-tuned heuristics. Therefore, the relevant results returned by both are the same, although they behave differently specially when performing alignments with low scores. Hence, they can be considered complementary bioinformatics tools.https://www.frontiersin.org/articles/10.3389/fgene.2021.618659/fullproteinsparallel algorithmbenchmarkingpairwise alignmentdatabase search |
spellingShingle | Sergio Gálvez Federico Agostini Javier Caselli Pilar Hernandez Gabriel Dorado BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization Frontiers in Genetics proteins parallel algorithm benchmarking pairwise alignment database search |
title | BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization |
title_full | BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization |
title_fullStr | BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization |
title_full_unstemmed | BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization |
title_short | BLVector: Fast BLAST-Like Algorithm for Manycore CPU With Vectorization |
title_sort | blvector fast blast like algorithm for manycore cpu with vectorization |
topic | proteins parallel algorithm benchmarking pairwise alignment database search |
url | https://www.frontiersin.org/articles/10.3389/fgene.2021.618659/full |
work_keys_str_mv | AT sergiogalvez blvectorfastblastlikealgorithmformanycorecpuwithvectorization AT federicoagostini blvectorfastblastlikealgorithmformanycorecpuwithvectorization AT javiercaselli blvectorfastblastlikealgorithmformanycorecpuwithvectorization AT pilarhernandez blvectorfastblastlikealgorithmformanycorecpuwithvectorization AT gabrieldorado blvectorfastblastlikealgorithmformanycorecpuwithvectorization |