The oneAPI DPC++ Library (oneDPL) provides the functionality specified in the C++ standard, with extensions to support data parallelism and offloading to devices, and with extensions to simplify its usage for implementing data parallel algorithms.


Unless specified otherwise, in this document the C++ standard refers to ISO/IEC 14882:2017 Programming languages - C++, commonly known as C++17.

The library is comprised of the following components:

  • Parallel API:

    • Parallel algorithms, complemented with execution policies and companion APIs for running on oneAPI devices.

    • An additional set of library classes and functions that are known to be useful in practice but are not yet included into C++ or SYCL specifications.

  • SYCL Kernels API:

    • A subset of the C++ standard library which can be used with buffers and data parallel kernels.

    • Support of random number generation including engines and distributions.

    • Various utilities in addition to the C++ standard functionality.