Intel® oneAPI DPC++ Library (oneDPL)

Speed Up DPC++ (SYCL*) Kernels on CPUs and GPUs

       

Features

Inline Accelerator Targeting

Use device and host containers to target GPUs or run your code across multi-node CPUs. 

Optimized C++ Standard Algorithms

Access parallelized C++17 algorithms and utilities for efficient application development and deployment on a variety of hardware.

Integrated with Intel® DPC++ Compatibility Tool

This library complements all Intel oneAPI DPC++ components to simplify migration of CUDA* applications to SYCL code.

    Benchmarks

    Documentation & Code Samples

    Code Samples

    Use the C++ Standard Template Library (STL) Extended API from oneDPL

    Histogram

    See how to write heterogeneous program to offload to a CPU or GPU usingupper_bound andreduce_by_segment API to implement both dense and sparse histograms.

    Stable Sorting by Key

    Use the extended API in oneDPL with thecounting andzip iterator extensions to implement a stable sort by key algorithm that can be offloaded to a CPU or GPU.

     

    Use the C++ STL and Parallel STL API for CPU & GPU Offload

    Maxloc Reduction

    This sample implements the Maxloc reduction search with direct SYCL code, and then simplifies it using oneDPL with three ways of passing data: in a standard container, in the SYCL buffer, or by using unified shared memory.

    Gamma Correction

    Learn how the oneDPL parallel STL policy and oneDPL algorithms help to accelerate a gamma correction's nonlinear operations to encode and decode the luminance of each pixel of an image.

    View All oneDPL Samples

    View the oneAPI Samples Catalog

    How to work with code samples:

      Specifications

      Processors:

      • Intel® Core™ processors Gen6 and newer
      • Intel® Xeon® processors

       

      GPUs:

      • Intel® UHD Graphics for 11th generation Intel processors or newer
      • Intel® Iris® Xe graphics
      • Intel® Arc™ graphics
      • Intel® Data Center GPU Flex Series
      • Intel® Data Center GPU Max Series

        Host and target operating systems:

        • Windows
        • Linux

         

        Languages:

        • SYCL
        • C++

          Development environments (optional): 

          • Microsoft Visual Studio*, Microsoft Visual Studio Code
          • Eclipse* IDE

          For more information, see thesystem requirements.

            Get Help

            Your success is our success. Access these forums when you need assistance.