Skip To Main Content
Intel logo - Return to the home page
My Tools

Select Your Language

  • Bahasa Indonesia
  • Deutsch
  • English
  • Español
  • Français
  • Português
  • Tiếng Việt
  • ไทย
  • 한국어
  • 日本語
  • 简体中文
  • 繁體中文
Sign In to access restricted content

Using Intel.com Search

You can easily search the entire Intel.com site in several ways.

  • Brand Name: Core i9
  • Document Number: 123456
  • Code Name: Alder Lake
  • Special Operators: “Ice Lake”, Ice AND Lake, Ice OR Lake, Ice*

Quick Links

You can also try the quick links below to see results for most popular searches.

  • Product Information
  • Support
  • Drivers & Software

Recent Searches

Sign In to access restricted content

Advanced Search

Only search in

Sign in to access restricted content.

The browser version you are using is not recommended for this site.
Please consider upgrading to the latest version of your browser by clicking one of the following links.

  • Safari
  • Chrome
  • Edge
  • Firefox

Intel® oneAPI Math Kernel Library

Highly optimized, fast, and complete library of math functions for Intel® CPUs and GPUs. Accelerate math processing routines, increase application performance, and reduce development time.

Give Intel your input on Intel® oneAPI Math Kernel Library to help make improvements to meet your needs:
 

Take the Survey

Intel®-Optimized Math Library for Numerical Computing on CPUs & GPUs

Optimized Library for Scientific Computing
  • The fastest and most-used math library for Intel®-based systems† 
  • 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
  • Additional matrix multiply optimizations for next generation CPUs and GPUs including DGEMM, SGEMM, Systolic GEMM, DGETRF, DPOTRF, DGEQRF, FFT SP/DP, and RNG functions.
  • Increased CUDA* library function API compatibility coverage for BLAS, LAPACK, sparse BLAS, vector math, summary statistics, splines, and more, easing code migration to oneAPI and Intel GPUs.
  • Several optimizations and features on Intel® Data Center GPU Max Series:
    • FFTW3 Fortran OpenMP* offload APIs for real fast Fourier Transforms (FFT) and optimizations for 1D and 2D FFTs.
    • Gaussian inverse cumulative distribution function (ICDF)-based method and RNG optimizations of device APIs.
    • Sparse BLAS optimizations for sparse::gemv() and sparse::gemm() across a wide range of matrix sizes and sparse::matmat() for small, medium, and large problem sizes.
    • Optimizations for Cholesky inverse, triangular matrix inverse, and batch group LU inverse on GPUs.
  • Support for Intel® Advanced Matrix Extensions (Intel® AMX) bfloat16 data type and Intel® Advanced Vector Extensions 512 (Intel® AVX-512) float16 data type for the 4th generation Intel® Xeon® Scalable processor.

 

Download as Part of the Toolkit

oneMKL is included in the Intel oneAPI Base Toolkit, which is a core set of tools and libraries for developing high-performance, data-centric applications across diverse architectures.

Get It Now
Download the Stand-Alone Version

A stand-alone download of oneMKL is available. You can download binaries from Intel or choose your preferred repository.

Download
Develop in the Cloud

Build and optimize oneAPI multiarchitecture applications using the latest optimized Intel® oneAPI and AI tools, and test your workloads across Intel® CPUs and GPUs. No hardware installations, software downloads, or configuration necessary. Free for 120 days with extensions possible.

 

Get Access
Help oneMKL Evolve

oneMKL is part of the oneAPI industry standards initiative. We welcome you to participate.

 

oneAPI Specification for oneMKL

Open Source oneMKL Interfaces


 

What You Need
  • Get started by choosing the best interface for your application:
    • C Interface
    • Fortran Interface
    • SYCL Interface
  • 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.

Explore the Intel oneAPI Base Toolkit

Explore the Intel oneAPI HPC Toolkit

Learn about SYCL*

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 nondeterministic 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

These benchmarks are offered to help you make informed decisions about which routines to use in your applications, including performance for each major function domain in oneMKL by processor family. Some benchmark charts only include absolute performance measurements for specific problem sizes. Others compare previous versions, popular alternate open source libraries, and other functions for oneMKL.

To assess performance in high-performance computing environments, see the oneMKL Benchmarks Suite. The suite includes the Intel® Distribution for LINPACK* Benchmark, Intel® Distribution for MP LINPACK* Benchmark for clusters, and Intel® Optimized High Performance Conjugate Gradient Benchmark from the latest oneMKL release.

oneMKL Benchmarks Suite

Threaded SGEMM and BF16 GEMM Performance

LAPACK Performance Scaling at High Thread Count

Fast Fourier Transform Performance

Sparse Matrix-Vector Product Performance

Random Number Generator Performs Best with High Thread Count

Vector Math Function Performance

PARDISO Runs Faster than MUMPS Library

Documentation & Code Samples

Documentation

  • Get Started Guide
  • Release Notes
  • System Requirements
  • Developer References: 
    C | Fortran  | SYCL
  • Developer Guides:
    Windows* | Linux* | macOS*
     

View Current oneMKL Documentation

View Legacy Intel® Math Kernel Library Documentation


Library Linking Guidance

Intel® oneAPI Math Kernel Library Link Line Advisor
This web-based utility identifies which build options for compiler and linker to use with oneMKL, depending on the build environment you use and the feature set you want to enable.

Code Samples

Linear Algebra

  • Matrix Multiplication with CPUs and GPUs
    Use this sample to examine the oneMKL matrix multiplication functionality.
  • Block Cholesky Decomposition
    Learn how to use oneMKL routines for matrix multiplication, rank-k updates, triangular solves (BLAS), and Cholesky factorization (LAPACK).

 

Migration to SYCL*

  • cuBLAS Migration
    Use this set of samples to see how cuBLAS routines are transformed to equivalent oneMKL routines after migrating CUDA-based code to SYCL.
  • Matrix Multiplication cuBLAS Migrated
    Learn how to migrate your code to SYCL and use it in a high-performance way, offloading computations to GPU or CPU. See how to optimize the migration steps and improve processing time. 
  • Fourier Correlation
    Learn how to implement the Fourier correlation algorithm using SYCL, oneMKL, and Intel® oneAPI DPC++ Library (oneDPL) functions.


For Your Industry

  • Finance: Monte Carlo European Options
    See how to use the oneMKL random number generator (RNG) functionality to compute European option prices.
  • Finance: Black-Scholes
    Learn how to use vector math and the RNG available in oneMKL to calculate the prices of options using the Black-Scholes formula.
  • Healthcare: Computed Tomography Reconstruction
    Learn how to use discrete Fourier transform (DFT) routines to transform raw computed tomography (CT) data into a reconstructed image of the scanned object.

 

View All oneMKL Samples

View oneAPI Samples Catalog

How to work with code samples: 

  • Use a command-line interface: Windows | Linux
  • Use an IDE: Windows | Linux

Training Resources

Understand oneMKL

  • oneMKL Essentials
  • A Quick Overview of oneMKL) [5:47]
  • Simple Use of oneMKL for High Performance [9:48]
  • A Vendor-Neutral Path to Math Acceleration
  • Implement the Fourier Correlation Algorithm Using oneAPI
  • Solve Linear Systems Using oneMKL and OpenMP Target Offloading
  • oneMKL Verbose Mode: Quick and Easy GPU Library Execution Profiler

 

Take Advantage of SYCL

 NEW  How to Move from CUDA Math Library Calls to oneMKL

  • A C++ API with SYCL Support for Data Fitting

 

🗐 View All Resources

🗗 Training & Events Calendar

Optimize Performance

  • Speed Up Monte Carlo Simulations
  • Accelerate Lower-Upper (LU) Factorization Using Fortran, oneMKL, and OpenMP
  • Accelerate R Code with oneMKL
  • Case Study: ANSYS Fluent* Improves Performance with Intel® Advanced Vector Extensions and oneMKL

In-Depth Videos

 NEW  Why oneMKL? Accelerate Math Computation on the Latest Hardware [59:07]

  • Speed Up Math Computations on GPUs with oneMKL [45:22]
  • Solve Enhanced Math Problems on GPUs: Linear Algebra, Sparse Matrices, and RNGs [48:30]
  • Implement the Fourier Correlation Algorithm [47:37]

Specifications

Processors:

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


GPUs:

  • Intel® UHD Graphics for 11th generation Intel processors or newer
  • Intel® Iris® Xe graphics
  • Intel® Arc™ graphics
  • Intel® Data Center GPU Flex Series
  • Intel® Data Center GPU Max Series


Languages:

  • SYCL
  • C and C++
  • Fortran
     

For more information, see the system requirements. 

Operating systems:

  • Windows
  • Linux
  • macOS


Compilers:

  • Intel® oneAPI DPC++/C++ Compiler
  • GNU Compiler Collection (GCC)*
  • Intel® C++ Compiler Classic
  • Intel Fortran Compiler
  • 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

 

Get Help

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

  • oneMKL Forum
  • oneAPI Priority Support


Source

† Data from Evans Data Software Developer survey, 2022

Stay in the Know with All Things CODE

Sign up to receive the latest trends, tutorials, tools, training, and more to
help you write better code optimized for CPUs, GPUs, FPGAs, and other
accelerators—stand-alone or in any combination.

 

Sign Up
  • Features
  • Benchmarks
  • Documentation & Code Samples
  • Training Resources
  • Specifications
  • Help
  • Company Overview
  • Contact Intel
  • Newsroom
  • Investors
  • Careers
  • Corporate Responsibility
  • Diversity & Inclusion
  • Public Policy
  • © Intel Corporation
  • Terms of Use
  • *Trademarks
  • Cookies
  • Privacy
  • Supply Chain Transparency
  • Site Map
  • Do Not Share My Personal Information

Intel technologies may require enabled hardware, software or service activation. // No product or component can be absolutely secure. // Your costs and results may vary. // Performance varies by use, configuration and other factors. // See our complete legal Notices and Disclaimers. // Intel is committed to respecting human rights and avoiding complicity in human rights abuses. See Intel’s Global Human Rights Principles. Intel’s products and software are intended only to be used in applications that do not cause or contribute to a violation of an internationally recognized human right.

Intel Footer Logo