ReSYCLator: Transforming CUDA C++ source code into SYCL

Tobias Stauber, Peter Sommerlad
IFS Institute for Software at FHO-HSR Hochschule für Technik, Rapperswil, Switzerland
The Distributed & Heterogeneous Programming in C/C++ conference (DHPCC++), IWOCL, 2019


   title={ReSYCLator: Transforming CUDA C++ source code into SYCL},

   author={Stauber, Tobias and Sommerlad, Peter},



Download Download (PDF)   View View   Source Source   



CUDA while very popular, is not as flexible with respect to target devices as OpenCL. While parallel algorithm research might address problems first with a CUDA C++ solution, those results are not easily portable to a target not directly supported by CUDA. In contrast, a SYCL C++ solution can operate on the larger variety of platforms supported by OpenCL. ReSYCLator is a plug-in for the C++ IDE Cevelop[2], that is itself an extension of Eclipse-CDT. ReSYCLator bridges the gap between algorithm availability and portability, by providing automatic transformation of CUDA C++ code to SYCL C++. A first attempt basing the transformation on NVIDIA’s Nsight Eclipse CDT plug-in showed that Nsight’s weak integration into CDT’s static analysis and refactoring infrastructure is insufficient. Therefore, an own CUDA-C++ parser and CUDA language support for Eclipse CDT was developed (CRITTER) that is a sound platform for transformations from CUDA C++ programs to SYCL based on AST transformations.
Rating: 5.0/5. From 2 votes.
Please wait...

* * *

* * *

* * *

HGPU group © 2010-2022 hgpu.org

All rights belong to the respective authors

Contact us: