# Intel® oneAPI Math Kernel Library

The fastest and most-used math library for Intel®-based systems^{†}. Accelerate math processing routines, increase application performance, and reduce development time.

## Intel-Optimized Math Library for Numerical Computing

**Optimized Library for Scientific Computing**

- Enhanced math routines enable developers and data scientists to create performant science, engineering, or financial applications
- Core functions include BLAS, LAPACK, sparse solvers, fast Fourier transforms (FFT), random number generator functions (RNG), summary statistics, data fitting, and vector math
- Optimizes applications for current and future generations of Intel® CPUs, GPUs, and other accelerators
- Is a seamless upgrade for previous users of the Intel® Math Kernel Library (Intel® MKL)

**What’s New**

- Data Parallel C++ (DPC++) APIs maximize performance and cross-architecture portability
- Introduces C and Fortran OpenMP offload for Intel® GPU acceleration

**What You Need**

- The Intel® oneAPI Math Kernel Library (oneMKL) is available as part of the Intel® oneAPI Base Toolkit.
- Using oneMKL with Intel® MPI library or Intel® Fortran Compilers requires the Intel® oneAPI HPC Toolkit.

## Develop in the Cloud

Get what you need to build, test, and optimize your oneAPI projects for free. With an Intel® DevCloud account, you get 120 days of access to the latest Intel® hardware—CPUs, GPUs, FPGAs—and Intel oneAPI tools and frameworks. No software downloads. No configuration steps. No installations.

## Features

**Linear Algebra **Speed up linear algebra computations with low-level routines that operate on vectors and matrices, and are compatible with these industry-standard BLAS and LAPACK operations:

- Level 1: Vector-vector operations
- Level 2: Matrix-vector operations
- Level 3: Matrix-matrix operations

**Sparse Linear Algebra Functions**

Perform various operations on sparse matrices with low-level and inspector-executor routines including the following:

- Multiply sparse matrix with dense vector
- Multiply sparse matrix with dense matrix
- Solve linear systems with triangular sparse matrices
- Solve linear systems with general sparse matrices

**Fast Fourier Transforms (FFT)**

Transform a signal from its original domain (typically time or space) into a representation in the frequency domain and back. Use FFT functions in one, two, or three dimensions with support for mixed radices. The supported functions include complex-to-complex and real-to-complex transforms of arbitrary length in single-precision and double-precision.

**Random Number Generator Functions (RNG) **Use common pseudorandom, quasi-random, and non-deterministic random number engines to solve continuous and discrete distributions.

**Data Fitting**

Provide spline-based interpolation capabilities that you can use to approximate functions, function derivatives or integrals, and perform cell search operations.

**Vector Math **Balance accuracy and performance with vector-based elementary functions. Manipulate values with traditional algebraic and trigonometric functions.

**Summary Statistics **Compute basic statistical estimates (such as raw or central sums and moments) for single- and double-precision multidimensional datasets.

## Benchmarks

## Documentation & Code Samples

**Get Started**

- Intel oneAPI Math Kernel Library
- Podcast: Port Math Libraries Across Heterogeneous Architectures
- Webinar: Develop in a Heterogeneous Environment with Intel® oneAPI Math Kernel Library
- Webinar: Solve Enhanced Math Problems on GPUs: Linear Algebra, Sparse Matrices, and RNGs
- Case Study: BRODA Uses oneMKL to Optimize Sobol RNGs
- Case Study: ANSYS Fluent

**Documentation**

- Developer References

DPC++ | C | Fortran - Release Notes
- System Requirements
- License FAQ

## Specifications

**Processors:**

- Intel Atom® processors
- Intel® Core™ processors
- Intel® Xeon® Scalable processors

**GPUs:**

- Intel® Processor Graphics Gen9 and above
- X
^{e}architecture

**Languages:**

- Data Parallel C++ (DPC++)

- C and C++
- C#
- Fortran*

**Operating systems:**

- Windows*
- Linux*
- macOS*

**Compilers:**

- Intel® oneAPI DPC++/C++ Compiler
- GNU Compiler Collection (GCC)*
- Intel® C++ Compiler Classic
- Intel® Fortran Compiler (Beta)
- Intel® Fortran Compiler Classic
- Other compilers that follow the same standards

**Development environments:**

- Windows: Microsoft Visual Studio*
- Linux: Eclipse* and Eclipse CDT (C/C++ Development Tooling)*

**Threading models:**

- Intel® oneAPI Threading Building Blocks
- OpenMP

For more information, see the system requirements.

## Get the Single Component

## Get Help

#### Your success is our success. Access these support resources when you need assistance.

**Source**

† Data from Evans Data Software Developer survey, 2020

## Open-Source Version

Intel oneAPI Math Kernel Library is available as an open-source interfaces project.

#### Product and Performance Information

^{1}

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.