Before You Begin¶
Refer to Get Started with the Intel® DPC++ Compatibility Tool for installation and setup information.
Configure CLI environment¶
Set up your CLI environment by running the setvars script located in the root of your toolkit installation.
On Linux* (sudo):
source /opt/intel/oneapi/setvars.sh
On Linux (user):
source ~/intel/oneapi/setvars.sh
On Windows*:
C:\Program Files(x86)\Intel\oneAPI\setvars.bat
Samples¶
The Intel® DPC++ Compatibility Tool comes with several sample projects so you can explore the tool and familiarize yourself with how it functions.
Sample Project |
Description |
---|---|
Vector Add DPCT
|
The Vector Add DPCT sample demonstrates how to migrate a simple program from CUDA* to Data Parallel C++ (DPC++). Vector Add provides an easy way to verify that your development environment is setup correctly to use the Intel® DPC++ Compatibility Tool. |
Folder Options DPCT
|
The Folder Options DPCT sample provides an example of how to migrate more complex projects and use options. |
Rodinia NW DPCT
|
The Rodinia NW DPCT project demonstrates how to migrate a Make/CMake* project from CUDA to Data Parallel C++ (DPC++) using the Intel® DPC++ Compatibility Tool. |
Review the README file provided with each sample for more detailed information on the purpose and usage of the sample project.
To access the samples
use the
oneapi-cli
utility to select a sample from the Intel® DPC++ Compatibility Tool category, ordownload the samples from GitHub*.
For more information on how to download and access the samples, visit the Intel® oneAPI Base Toolkit Get Started Guides:
Emitted Warnings¶
During the migration of the files the Intel® DPC++ Compatibility Tool identifies places in the code that may require your attention to make the code SYCL compliant or correct.
The Intel® DPC++ Compatibility Tool inserts comments into the generated source files which are displayed as warnings in the output. For example:
/path/to/file.hpp:26:1: warning: DPCT1003:0: Migrated API does not return error code. (*,0) is inserted. You may need to rewrite this code.
// source code line for which warning was generated
^
For more details on what a particular warning means, see the Diagnostics Reference.