Deep Neural Network Library (DNNL)
==================================

Deep Neural Network Library (DNNL) is an
open-source performance library for deep learning applications. The library
includes basic building blocks for neural networks optimized
for Intel Architecture Processors and Intel Processor Graphics.

This package contains DNNL v1.2.0 (70f8b879ea7a0c38caedb3320b7c85e8497ff50d).

You can find information about the latest version and release notes
at DNNL Github (https://github.com/intel/mkl-dnn/releases).

Documentation
-------------

* Developer guide (https://intel.github.io/mkl-dnn/v1.2)
explains programming model, supported functionality, details of primitives
implementations and includes annotated examples.
* API reference (https://intel.github.io/mkl-dnn/v1.2/modules.html)
provides comprehensive reference of the library API.

System Requirements
-------------------

DNNL supports systems based on Intel 64 architecture or
compatible processors.

The library is optimized for the following CPUs:
* Intel Atom processor with Intel SSE4.1 support
* 4th, 5th, 6th, 7th, and 8th generation Intel Core(TM) processor
* Intel Xeon(R) processor E3, E5, and E7 family (formerly Sandy Bridge,
  Ivy Bridge, Haswell, and Broadwell)
* Intel Xeon Phi(TM) processor (formerly Knights Landing and Knights Mill)
* Intel Xeon Scalable processor (formerly Skylake and Cascade Lake)
* future Intel Xeon Scalable processor (code name Cooper Lake)

DNNL detects instruction set architecture (ISA) in the runtime and uses
just-in-time (JIT) code generation to deploy the code optimized
for the latest supported ISA.

The library is optimized for the following GPUs:
* Intel HD Graphics
* Intel UHD Graphics
* Intel Iris Plus Graphics

## Linux

Common dependencies:
* glibc 2.12 or later
* GCC 4.8 or later

Runtime specific dependencies:

| Runtime configuration | Requirements                                         |
| --------------------- | ---------------------------------------------------- |
| `cpu_gomp`            | No additional requirements                           |
| `cpu_iomp`            | Intel OpenMP runtime                                 |
| `cpu_tbb`             | Threading Building Blocks 2017 or later              |

## Windows

Common dependencies:
* Microsoft Visual C++ Redistributable 2015 or later

Runtime specific dependencies:

| Runtime configuration | Requirements                                         |
| --------------------- | -----------------------------------------------------|
| `cpu_vcomp`           | No additional requirements                           |
| `cpu_iomp`            | Intel OpenMP runtime                                 |
| `cpu_tbb`             | Threading Building Blocks 2017 or later              |

## macOS

Common dependencies:
* macOS 10.13 (High Sierra) or later

Runtime specific dependencies:

| Runtime configuration | Requirements                                         |
| --------------------- | -----------------------------------------------------|
| `cpu_iomp`            | Intel OpenMP runtime                                 |
| `cpu_tbb`             | Threading Building Blocks 2017 or later              |

Support
-------

Please submit your questions, feature requests, and bug reports on the
GitHub issues page (https://github.com/intel/mkl-dnn/issues/new/choose).

You may reach out to project maintainers privately at dnnl.maintainers@intel.com.

WARNING:
The following functionality has preview status and might be changed without
prior notification in future releases:
* Primitive cache

License
-------

DNNL is licensed under Apache License Version 2.0. This
software includes components with separate copyright notices and license
terms. Your use of the source code for these components is subject to the terms
and conditions of the following licenses.

3-clause BSD license:
* Xbyak (https://github.com/herumi/xbyak)
* ittnotify (https://github.com/intel/IntelSEAPI)
* CMake (https://github.com/Kitware/CMake)

Boost Software License, Version 1.0:
* Boost C++ Libraries (https://www.boost.org/)

See accompanying LICENSE file for full license text and copyright notices.
