Intel Publishes oneAPI Level 0 Specification
Back at SC19 Intel released a beta of their oneAPI Base Toolkit for software developers to work on performance-optimized, cross-device software. Complementing that initial software beta is now the oneAPI Level 0 Specification.
The oneAPI Level 0 Specification is self-described as "The objective of the ‘One API’ Level-Zero API is to provide direct-to-metal interfaces to offload accelerator devices. It is a programming interface that can be published at a cadence that better matches Intel hardware releases and can be tailored to any device needs. It can be adapted to support broader set of languages features, such as function pointers, virtual functions, unified memory, and I/O capabilities."
Here's a look at where the level zero interface fits into the oneAPI stack:
The level-zero API encompasses device discovery, memory allocation, synchronization primitives, and other low-level elements while being generic enough to support a wide range of possible devices as well as fostering the higher-level interfaces of the oneAPI software API.
While catering to Intel hardware releases, the specification itself is under the Creative Commons and the actual implementation of it under an MIT license, thus the ability for other ISVs and IHVs to embrace the oneAPI specification. Similarly, we've already heard of Codeplay working on oneAPI support for NVIDIA GPUs to be released in 2020.
OneAPI remains a very interesting initiative we look forward to seeing it evolve and come more to fruition in 2020. The initial L0 specification can be found via spec.oneapi.com.
The oneAPI Level 0 Specification is self-described as "The objective of the ‘One API’ Level-Zero API is to provide direct-to-metal interfaces to offload accelerator devices. It is a programming interface that can be published at a cadence that better matches Intel hardware releases and can be tailored to any device needs. It can be adapted to support broader set of languages features, such as function pointers, virtual functions, unified memory, and I/O capabilities."
Here's a look at where the level zero interface fits into the oneAPI stack:
The level-zero API encompasses device discovery, memory allocation, synchronization primitives, and other low-level elements while being generic enough to support a wide range of possible devices as well as fostering the higher-level interfaces of the oneAPI software API.
While catering to Intel hardware releases, the specification itself is under the Creative Commons and the actual implementation of it under an MIT license, thus the ability for other ISVs and IHVs to embrace the oneAPI specification. Similarly, we've already heard of Codeplay working on oneAPI support for NVIDIA GPUs to be released in 2020.
OneAPI remains a very interesting initiative we look forward to seeing it evolve and come more to fruition in 2020. The initial L0 specification can be found via spec.oneapi.com.
16 Comments