Early Experiences Migrating CUDA codes to oneAPI

Autores
Costanzo, Manuel; Rucci, Enzo; García-Sánchez, Carlos; Naiouf, Marcelo
Año de publicación
2021
Idioma
inglés
Tipo de recurso
documento de conferencia
Estado
versión publicada
Descripción
The heterogeneous computing paradigm represents a real programming challenge due to the proliferation of devices with different hardware characteristics. Recently Intel introduced oneAPI, a new programming environment that allows code developed in DPC++ to be run on different devices such as CPUs, GPUs, FPGAs, among others. This paper presents our first experiences in porting two CUDA applications to DPC++ using the oneAPI dpct tool. From the experimental work, it was possible to verify that dpct does not achieve 100% of the migration task; however, it performs most of the work, reporting the programmer of possible pending adaptations. Additionally, it was possible to verify the functional portability of the DPC++ code obtained, having successfully executed it on different CPU and GPU architectures.
Facultad de Informática
Materia
Ciencias Informáticas
oneAPI
SYCL
GPU
CUDA
Code portability
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by-nc-sa/4.0/
Repositorio
SEDICI (UNLP)
Institución
Universidad Nacional de La Plata
OAI Identificador
oai:sedici.unlp.edu.ar:10915/125138

id SEDICI_f1620a4ed7bd8e015437cd9c5557cdb7
oai_identifier_str oai:sedici.unlp.edu.ar:10915/125138
network_acronym_str SEDICI
repository_id_str 1329
network_name_str SEDICI (UNLP)
spelling Early Experiences Migrating CUDA codes to oneAPICostanzo, ManuelRucci, EnzoGarcía-Sánchez, CarlosNaiouf, MarceloCiencias InformáticasoneAPISYCLGPUCUDACode portabilityThe heterogeneous computing paradigm represents a real programming challenge due to the proliferation of devices with different hardware characteristics. Recently Intel introduced oneAPI, a new programming environment that allows code developed in DPC++ to be run on different devices such as CPUs, GPUs, FPGAs, among others. This paper presents our first experiences in porting two CUDA applications to DPC++ using the oneAPI dpct tool. From the experimental work, it was possible to verify that dpct does not achieve 100% of the migration task; however, it performs most of the work, reporting the programmer of possible pending adaptations. Additionally, it was possible to verify the functional portability of the DPC++ code obtained, having successfully executed it on different CPU and GPU architectures.Facultad de Informática2021info:eu-repo/semantics/conferenceObjectinfo:eu-repo/semantics/publishedVersionObjeto de conferenciahttp://purl.org/coar/resource_type/c_5794info:ar-repo/semantics/documentoDeConferenciaapplication/pdf14-18http://sedici.unlp.edu.ar/handle/10915/125138enginfo:eu-repo/semantics/altIdentifier/isbn/978-950-34-2016-4info:eu-repo/semantics/reference/hdl/10915/121564info:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-sa/4.0/Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2025-10-22T17:11:04Zoai:sedici.unlp.edu.ar:10915/125138Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292025-10-22 17:11:04.528SEDICI (UNLP) - Universidad Nacional de La Platafalse
dc.title.none.fl_str_mv Early Experiences Migrating CUDA codes to oneAPI
title Early Experiences Migrating CUDA codes to oneAPI
spellingShingle Early Experiences Migrating CUDA codes to oneAPI
Costanzo, Manuel
Ciencias Informáticas
oneAPI
SYCL
GPU
CUDA
Code portability
title_short Early Experiences Migrating CUDA codes to oneAPI
title_full Early Experiences Migrating CUDA codes to oneAPI
title_fullStr Early Experiences Migrating CUDA codes to oneAPI
title_full_unstemmed Early Experiences Migrating CUDA codes to oneAPI
title_sort Early Experiences Migrating CUDA codes to oneAPI
dc.creator.none.fl_str_mv Costanzo, Manuel
Rucci, Enzo
García-Sánchez, Carlos
Naiouf, Marcelo
author Costanzo, Manuel
author_facet Costanzo, Manuel
Rucci, Enzo
García-Sánchez, Carlos
Naiouf, Marcelo
author_role author
author2 Rucci, Enzo
García-Sánchez, Carlos
Naiouf, Marcelo
author2_role author
author
author
dc.subject.none.fl_str_mv Ciencias Informáticas
oneAPI
SYCL
GPU
CUDA
Code portability
topic Ciencias Informáticas
oneAPI
SYCL
GPU
CUDA
Code portability
dc.description.none.fl_txt_mv The heterogeneous computing paradigm represents a real programming challenge due to the proliferation of devices with different hardware characteristics. Recently Intel introduced oneAPI, a new programming environment that allows code developed in DPC++ to be run on different devices such as CPUs, GPUs, FPGAs, among others. This paper presents our first experiences in porting two CUDA applications to DPC++ using the oneAPI dpct tool. From the experimental work, it was possible to verify that dpct does not achieve 100% of the migration task; however, it performs most of the work, reporting the programmer of possible pending adaptations. Additionally, it was possible to verify the functional portability of the DPC++ code obtained, having successfully executed it on different CPU and GPU architectures.
Facultad de Informática
description The heterogeneous computing paradigm represents a real programming challenge due to the proliferation of devices with different hardware characteristics. Recently Intel introduced oneAPI, a new programming environment that allows code developed in DPC++ to be run on different devices such as CPUs, GPUs, FPGAs, among others. This paper presents our first experiences in porting two CUDA applications to DPC++ using the oneAPI dpct tool. From the experimental work, it was possible to verify that dpct does not achieve 100% of the migration task; however, it performs most of the work, reporting the programmer of possible pending adaptations. Additionally, it was possible to verify the functional portability of the DPC++ code obtained, having successfully executed it on different CPU and GPU architectures.
publishDate 2021
dc.date.none.fl_str_mv 2021
dc.type.none.fl_str_mv info:eu-repo/semantics/conferenceObject
info:eu-repo/semantics/publishedVersion
Objeto de conferencia
http://purl.org/coar/resource_type/c_5794
info:ar-repo/semantics/documentoDeConferencia
format conferenceObject
status_str publishedVersion
dc.identifier.none.fl_str_mv http://sedici.unlp.edu.ar/handle/10915/125138
url http://sedici.unlp.edu.ar/handle/10915/125138
dc.language.none.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv info:eu-repo/semantics/altIdentifier/isbn/978-950-34-2016-4
info:eu-repo/semantics/reference/hdl/10915/121564
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
http://creativecommons.org/licenses/by-nc-sa/4.0/
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
eu_rights_str_mv openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-sa/4.0/
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
dc.format.none.fl_str_mv application/pdf
14-18
dc.source.none.fl_str_mv reponame:SEDICI (UNLP)
instname:Universidad Nacional de La Plata
instacron:UNLP
reponame_str SEDICI (UNLP)
collection SEDICI (UNLP)
instname_str Universidad Nacional de La Plata
instacron_str UNLP
institution UNLP
repository.name.fl_str_mv SEDICI (UNLP) - Universidad Nacional de La Plata
repository.mail.fl_str_mv alira@sedici.unlp.edu.ar
_version_ 1846783453935173632
score 12.982451