Math Kernel Library

Uses your system voice; voice and rate in settings.

Snapshot

≈ 4 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

Intel oneAPI Math Kernel Library (Intel oneMKL), formerly known as Intel Math Kernel Library, is a library of optimized math routines for science, engineering, and financial applications. Core math functions include BLAS, LAPACK, ScaLAPACK, sparse solvers, fast Fourier transforms, and vector math. The library supports x86 CPUs and Intel GPUs and is available for Windows and Linux operating systems. Intel oneAPI Math Kernel Library is not to be confused with the oneAPI Math Library (oneMath), formerly known as oneMKL Interfaces, which is an open-source wrapper library that allows DPC++ applications to call oneMKL routines that can be offloaded to multiple hardware architectures and vendors defined during runtime.

Intel oneAPI Math Kernel Library (Intel oneMKL), formerly known as Intel Math Kernel Library, is a library of optimized math routines for science, engineering, and financial applications. Core math functions include BLAS, LAPACK, ScaLAPACK, sparse solvers, fast Fourier transforms, and vector math. The library supports x86 CPUs and Intel GPUs and is available for Windows and Linux operating systems. Intel oneAPI Math Kernel Library is not to be confused with the oneAPI Math Library (oneMath), formerly known as oneMKL Interfaces, which is an open-source wrapper library that allows DPC++ applications to call oneMKL routines that can be offloaded to multiple hardware architectures and vendors defined during runtime. ==History and licensing== Intel launched the oneAPI Math Kernel Library in November 1994, and called it Intel BLAS Library. In 1996, the library was renamed to Intel Math Kernel Library until April 2020, when intel oneMKL has become part of oneAPI initiative to support multiple hardware architectures, holding the current name Intel oneAPI Math Kernel Library. The library is available as part of oneAPI Toolkits and in a standalone form, free of charge under the terms of Intel Simplified Software License which allow redistribution. Commercial support for Intel oneMKL is available when purchased as part of oneAPI Base Toolkit. Following Apple’s transition away from x86 CPUs, Intel oneMKL last release available for macOS is the version 2023.2.2 and it is scheduled for removal by the end of 2024. ==Details== ===Functional categories=== Intel oneMKL has the following functional categories: Linear algebra: BLAS routines are vector-vector (Level 1), matrix-vector (Level 2) and matrix-matrix (Level 3) operations for real and complex single and double precision data. LAPACK consists of tuned LU, Cholesky and QR factorizations, eigenvalue and least squares solvers. MKL also includes Sparse BLAS, ScaLAPACK, Sparse Solver, Extended Eigensolver (FEAST, PARDISO), PBLAS and BLACS. MKL is even better at small dimensions than libxsmm. Since oneMKL uses standard interfaces for BLAS and LAPACK, the application which uses other implementations can get better performance on Intel and compatible processors by re-linking with MKL libraries. oneMKL includes a variety of Fast Fourier Transforms (FFTs) from 1D to multidimensional, complex to complex, real to complex, and real to real transforms of arbitrary lengths. Applications written with the open source FFTW can be easily ported to MKL by linking with interface wrapper libraries provided as part of MKL for easy migration. Cluster versions of LAPACK and FFTs are also available as part of MKL to take advantage of MPI parallelism in addition to single node parallelism from multithreading. Vector math functions include computationally intensive core mathematical operations for single and double precision real and complex data types. These are similar to libm functions from compiler libraries but operate on vectors rather than scalars to provide better performance. There are various controls for setting accuracy, error mode and denormalized number handling to customize the behavior of the routines. Statistics functions include random number generators and probability distributions, optimized for multicore processors. Also included are compute-intensive in and out-of-core routines to compute basic statistics, estimation of dependencies etc. Data fitting functions include splines (linear, quadratic, cubic, look-up, stepwise constant) for 1-dimensional interpolation that can be used in data analytics, geometric modeling and surface approximation applications. Partial Differential Equations Nonlinear Optimization Problem Solvers Once, oneMKL included Deep Neural Network functions, but they were removed in version 2020 as a spin-off that originated the open-source Intel oneAPI Deep Neural Network Library. ==See also== OneAPI (compute acceleration) List of numerical libraries Automatically Tuned Linear Algebra Software (ATLAS) GotoBLAS and OpenBLAS Integrated Performance Primitives Intel Cryptography Primitives Library Numerical Library Collection – by NEC for their vector processor ==References== ==External links== Documentation oneMKL User Forum oneAPI oneMKL Specification oneMKL Benchmarks Suite

Text derived from https://en.wikipedia.org/w/index.php?oldid=1351335558 under CC BY-SA 4.0; modifications have been made.