Visible to Intel only — GUID: GUID-BEC539FD-A2B8-4FAF-878E-FA2A3BF29B0F
Intel® oneAPI Math Kernel Library (oneMKL)
The Intel® oneAPI Math Kernel Library (oneMKL) is a computing math library of highly optimized and extensively parallelized routines for applications that require maximum performance. oneMKL contains the high-performance optimizations from the full Intel® Math Kernel Library for CPU architectures (with C/Fortran programming language interfaces) and adds to them a set of SYCL* interfaces for achieving performance on various CPU architectures and Intel Graphics Technology for certain key functionalities. oneMKL provides BLAS and LAPACK linear algebra routines, fast Fourier transforms, vectorized math functions, random number generation functions, and other functionality.
You can use OpenMP* offload to run standard oneMKL computations on Intel GPUs. Refer to OpenMP* offload for C interfaces and OpenMP* offload for Fortran interfaces for more information.
The new SYCL interfaces with optimizations for CPU and GPU architectures have been added for key functionality in the following major areas of computation:
BLAS and LAPACK dense linear algebra routines
Sparse BLAS sparse linear algebra routines
Random number generators (RNG)
Vector Mathematics (VM) routines for optimized mathematical operations on vectors
Fast Fourier Transforms (FFTs)
For the complete list of features, documentation, code samples, and downloads, visit the official Intel oneAPI Math Kernel Library website. If you plan to use oneMKL as part of the oneAPI Base Toolkit, consider that priority support is available as a paid option. For Intel community-support, visit the oneMKL forum. For the open-source oneMKL Interfaces project, visit the oneMKL GitHub* page.
The table below describes the difference in these oneMKL sites:
Defines the DPC++ interfaces for performance math library functions. The oneMKL specification can evolve faster and more frequently than implementations of the specification. |
|
An open source implementation of the specification. The project goal is to demonstrate how the DPC++ interfaces documented in the oneMKL specification can be implemented for any math library and work for any target hardware. While the implementation provided here may not yet be the full implementation of the specification, the goal is to build it out over time. We encourage the community to contribute to this project and help to extend support to multiple hardware targets and other math libraries. |
|
The Intel product implementation of the specification (with DPC++ interfaces) as well as similar functionality with C and Fortran interfaces, and is provided as part of Intel® oneAPI Base Toolkit. It is highly optimized for Intel CPU and Intel GPU hardware. |