Get Started with Intel® oneAPI Deep
Neural Network Library
The Intel® oneAPI Deep Neural Network Library (oneDNN) is a performance library for deep learning
applications. The library includes basic building blocks for neural networks optimized for Intel® Architecture
Processors and Intel Processor Graphics. oneDNN is intended for deep learning applications and framework
developers interested in improving application performance on Intel CPUs and GPUs.
The oneDNN library provides a SYCL* extensions API for CPUs and GPUs.
See also The full library documentation is available on GitHub and the Intel Developer Zone.
Before You Begin
• See Get Started with the Intel® oneAPI DPC++/C++ Compiler.
• Refer to the oneDNN Release Notes and System Requirements to make sure you have the necessary
system and software components.
• To build examples, you will also need CMake* 2.8.1.1 or later.
Examples
Use the following sample projects to become familiar with the Intel® oneAPI Deep Neural Network Library:
Sample Name Description
getting_started This C++ API example demonstrates the basics of
the oneDNN programming model.
sycl_interop_buffer and sycl_interop_usm This C++ API example demonstrates programming
for Intel® Processor Graphics with SYCL extensions
API in oneDNN.
Building Examples with the Intel® oneAPI DPC++/C++ Compiler
To setup the oneAPI environment, see the following examples.
Linux
source ${ONEAPI_ROOT}/setvars.sh
# Copy examples to a working directory
cp -R ${DNNLROOT}/examples .
cd examples
# Compile
icpx -fsycl getting_started.cpp -o getting_started -ldnnl
# Run
./getting_started cpu
./getting_started gpu
Get Started with Intel® oneAPI Deep Neural Network Library
3