oneAPI Specification#

oneAPI is an open, free, and standards-based programming system that provides portability and performance across accelerators and generations of hardware. oneAPI consists of a language and libraries for creating parallel applications:

  • SYCL: oneAPI’s core language for programming accelerators and multiprocessors. SYCL allows developers to reuse code across hardware targets (CPUs and accelerators such as GPUs and FPGAs) and tune for a specific architecture

  • oneDPL: A companion to the DPC++ Compiler for programming oneAPI devices with APIs from C++ standard library, Parallel STL, and extensions.

  • oneDNN: High performance implementations of primitives for deep learning frameworks

  • oneCCL: Communication primitives for scaling deep learning frameworks across multiple devices

  • Level Zero: System interface for oneAPI languages and libraries

  • oneDAL: Algorithms for accelerated data science

  • oneTBB: Library for adding thread-based parallelism to complex applications on multiprocessors

  • oneMKL: High performance math routines for science, engineering, and financial applications