Intel’s oneAPI toolkits includes the Intel DPC++ Compatibility Tool to assist application developers with migrating code written in CUDA to DPC++. In addition, it provides a tool to assist with moving large Make or CMake projects. For simple CUDA programs, using the compatibility tool can be as simple as running the ‘dpct’ command to migrate a CUDA source file to DPC++.
For complex code the compatibility tool may not translate all of the code and instead and mark some portions for the developer to translate manually while still translating the rest. The compatibility tool also offers an opportunity to jump into working with the DPC++ (and SYCL) programming model as one can use the translated code generated from simple CUDA examples to understand the DPC++ and SYCL APIs.