Developer Guide and Reference

  • 2022.2
  • 09/08/2022
  • Public Content

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/
  • On Linux (user):
    source ~/intel/oneapi/
  • On Windows*:
    C:\Program Files(x86)\Intel\oneAPI\setvars.bat


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
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
  • bar/
  • bar/util.h
The Folder Options DPCT sample provides an example of how to migrate more complex projects and use options.
Rodinia NW DPCT
  • needle.h
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
    utility to select a sample from the Intel® DPC++ Compatibility Tool category, or
  • download 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.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at