Porting a Legacy CUDA Stencil Code to oneAPI
- Recently, Intel released the oneAPI programming environment. With Data Parallel C++ (DPC++), oneAPI enables codes to target multiple hardware architectures like multi-core CPUs, GPUs, and even FPGAs or other hardware using a single source. For legacy codes that were written for Nvidia GPUs, a compatibility tool is provided which facilitates the transition to the SYCL-based DPC++ programming language. This paper presents early experiences when using both the compatibility tool and oneAPI as well the employed extension to the SYCL programming standard for the tsunami simulation code easyWave. A performance study compares the original code running on Xeon processors using OpenMP as well as CUDA with the performance of the DPC++ counter part on multicore CPUs as well as integrated GPUs.
Author: | Steffen ChristgauORCiDGND, Thomas SteinkeORCiD |
---|---|
Document Type: | In Proceedings |
Parent Title (English): | 2020 IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2020, New Orleans, LA, USA, May 18-22, 2020 |
First Page: | 359 |
Last Page: | 367 |
Publisher: | IEEE |
Place of publication: | New Orleans |
Year of first publication: | 2020 |
Page Number: | 9 |
DOI: | https://doi.org/10.1109/IPDPSW50202.2020.00070 |