Welcome back to the oneAPI channel
oneAPI is a cross-industry open standards,
what exactly does it mean ?
and why is this a huge opportunity for you, your company and the industry
oneAPI is an industry wide effort.
Just a quick look at the oneAPI web site
can you show you a partial list of academia and industry partners who are already taking part
It's pretty exiting to see universities and companies
from around the world collaborate like this to drive a common vision.
So yes, Intel has their implementation of oneAPI, but you can have yours too.
If you are a SW developer or a HW vendor
with a set of silicon solutions or a startup with a new accelerator,
The spec if there, open source, and you can implement your version
of each of the spec elements, either language or libraries.
When you do that, millions of developers can start using your HW with the same tools,
libraries or APIs they are already using today..
Well, there even more to it
You can even ask for spec improvements or modifications and be part of the definition..
In the oneAPI git-hub page,
you can find the open-source implementation of each of the components of oneAPI
And also the oneAPI specs,
And the TAB, the page of the Technical Advisory Board..
The TAB meeting notes are published, all the presentations and discussions..
If you'd like to take part, to make improvements to the spec, one way is to just open an issue here
The spec itself is open to all, you can find it under oneapi.com
You can download the pdf..
or browse thru the spec. You can find here the spec for all the oneAPI components..
One interesting thing to look at is the level-zero specifications
Level-zero is basically an abstraction layer between your HW to the oneAPI top level SW stack..
So if you implement level-zero on your HW,
you get all the hooks to seamlessly connect to oneAPI SW components..
We explain it in more details in the level-zero video
The onAPI spec 1.0 was released end of 2020
We will have quarterly updates and are expecting a 1.1 specification towards end of 2021
Intel has always embraced open standards over locking developers into proprietary approaches.
The oneAPI industry specification is no exception.
oneAPI has a growing ecosystem of more than 60 academic, industry, and government partners
They evaluate the oneAPI software and provide inputs to the spec
The goal of oneAPI is to support vendor-neutral, cross-architecture development.
As shown in this diagram, SYCL or similar Data Parallel C++ programs can be compiled
on a growing number of architectures.
For example, the Intel oneAPI compiler
supports Intel CPUs, GPUs, and FPGAs via the OpenCL or Level 0 backends,
but other compilers support NVIDIA, AMD, ARM, and Xilinx hardware through a number of backends.
Just to mention a few examples..
CodePlay have developed a Data Parallel C++ compiler and math kernel library
on top of the CUDA API and cuBLAS libraries to provide oneAPI support for NVIDIA GPUs.
Another example is hipSYCL from the Heidelberg University Computing Centre.
It can target AMD GPUs via ROCm or NVIDIA GPUs via CUDA.
It can also target CPUs via the OpenMP standard.
And maybe the last example.
Fujitsu and the RIKEN Center for Computational Science recently documented
their experience porting the oneAPI Deep Neural Network Library, or oneDNN,
to the ARM-based Fugaku supercomputer.
Adopting oneDNN resulted in significant speedups in neural network training and inference.
Pretty cool.
oneAPI specs are public,
We have seen where to find, download and contribute to the spec.
we hope to see your implementations and feedbacks
Thank you