Assessing Opportunities of SYCL for Biological Sequence Alignment on GPU-based Systems

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Costanzo, Manuel, Rucci, Enzo, Sánchez, Carlos García, Naiouf, Marcelo, Prieto-Matías, Manuel
Natura: Preprint
Pubblicazione: 2022
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866914690406285312
author Costanzo, Manuel
Rucci, Enzo
Sánchez, Carlos García
Naiouf, Marcelo
Prieto-Matías, Manuel
author_facet Costanzo, Manuel
Rucci, Enzo
Sánchez, Carlos García
Naiouf, Marcelo
Prieto-Matías, Manuel
contents Bioinformatics and Computational Biology are two fields that have been exploiting GPUs for more than two decades, being CUDA the most used programming language for them. However, as CUDA is an NVIDIA proprietary language, it implies a strong portability restriction to a wide range of heterogeneous architectures, like AMD or Intel GPUs. To face this issue, the Khronos Group has recently proposed the SYCL standard, which is an open, royalty-free, cross-platform abstraction layer, that enables the programming of a heterogeneous system to be written using standard, single-source C++ code. Over the past few years, several implementations of this SYCL standard have emerged, being oneAPI the one from Intel. This paper presents the migration process of the SW\# suite, a biological sequence alignment tool developed in CUDA, to SYCL using Intel's oneAPI ecosystem. The experimental results show that SW\# was completely migrated with a small programmer intervention in terms of hand-coding. In addition, it was possible to port the migrated code between different architectures (considering multiple vendor GPUs and also CPUs), with no noticeable performance degradation on 5 different NVIDIA GPUs. Moreover, performance remained stable when switching to another SYCL implementation. As a consequence, SYCL and its implementations can offer attractive opportunities for the Bioinformatics community, especially considering the vast existence of CUDA-based legacy codes.
format Preprint
id arxiv_https___arxiv_org_abs_2211_10769
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Assessing Opportunities of SYCL for Biological Sequence Alignment on GPU-based Systems
Costanzo, Manuel
Rucci, Enzo
Sánchez, Carlos García
Naiouf, Marcelo
Prieto-Matías, Manuel
Programming Languages
Distributed, Parallel, and Cluster Computing
Bioinformatics and Computational Biology are two fields that have been exploiting GPUs for more than two decades, being CUDA the most used programming language for them. However, as CUDA is an NVIDIA proprietary language, it implies a strong portability restriction to a wide range of heterogeneous architectures, like AMD or Intel GPUs. To face this issue, the Khronos Group has recently proposed the SYCL standard, which is an open, royalty-free, cross-platform abstraction layer, that enables the programming of a heterogeneous system to be written using standard, single-source C++ code. Over the past few years, several implementations of this SYCL standard have emerged, being oneAPI the one from Intel. This paper presents the migration process of the SW\# suite, a biological sequence alignment tool developed in CUDA, to SYCL using Intel's oneAPI ecosystem. The experimental results show that SW\# was completely migrated with a small programmer intervention in terms of hand-coding. In addition, it was possible to port the migrated code between different architectures (considering multiple vendor GPUs and also CPUs), with no noticeable performance degradation on 5 different NVIDIA GPUs. Moreover, performance remained stable when switching to another SYCL implementation. As a consequence, SYCL and its implementations can offer attractive opportunities for the Bioinformatics community, especially considering the vast existence of CUDA-based legacy codes.
title Assessing Opportunities of SYCL for Biological Sequence Alignment on GPU-based Systems
topic Programming Languages
Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2211.10769