Evaluation of Intel's DPC++ Compatibility Tool in heterogeneous computing

The Intel DPC++ Compatibility Tool is a component of the Intel oneAPI Base Toolkit. This tool automatically transforms CUDA code into Data Parallel C++ (DPC++), thus assisting in the migration process. DPC++ is an implementation of the programming standard for heterogeneous computing known as SYCL,...

Descripción completa

Detalles Bibliográficos
Autores: Castaño Roldán, Germán, Faqir-Rhazoui, Youssef, García Sánchez, Carlos, Prieto Matías, Manuel
Tipo de recurso: artículo
Fecha de publicación:2022
País:España
Institución:Universidad Complutense de Madrid (UCM)
Repositorio:Docta Complutense
Idioma:inglés
OAI Identifier:oai:docta.ucm.es:20.500.14352/71891
Acceso en línea:https://hdl.handle.net/20.500.14352/71891
Access Level:acceso abierto
Palabra clave:DPC++
oneAPI
Rodinia
Intel DPCT
CUDA
Programación de ordenadores (Informática)
Hardware
Software
1203.23 Lenguajes de Programación
3304.16 Diseño Lógico
Descripción
Sumario:The Intel DPC++ Compatibility Tool is a component of the Intel oneAPI Base Toolkit. This tool automatically transforms CUDA code into Data Parallel C++ (DPC++), thus assisting in the migration process. DPC++ is an implementation of the programming standard for heterogeneous computing known as SYCL, which unifies the development of parallel applications on CPUs, GPUs or even FPGAs. This paper analyzes the DPC++ Compatibility Tool by considering the manual intervention required and the problems encountered while migrating the Rodinia benchmarks. For this suite, this tool achieves an impressive rate of almost 87% for code successfully migrated. Moreover, a comparative study of the performance obtained by the migrated code was carried out, showing a moderate overhead in most of the migrated examples. Finally, a performance comparison on different devices was also performed.