Drive Math-Based Application Optimization with oneMKL
Pavel Dyakov, math algorithm engineer, Intel Corporation
Today, as part of the oneAPI industry initiative, we released additional open-source math interfaces. The goal of open-sourcing the oneAPI Math Kernel Library (oneMKL) interface is to address the lack of an industry-standard interface and provide a single, cross-architecture API for CPUs and accelerators.
The oneMKL open-source interface lets developers use a single DPC++-based API across multiple CPU and accelerator architectures. Until recently, developers have used multiple libraries, which increased the complexity of their code base and lengthened their development cycle.
oneMKL Solves Key Customer Challenges with a Variety of Domains
The oneMKL APIs can be combined with math libraries that target a range of CPU hardware and other accelerator architectures. For example, the oneMKL open-source interface provides a path to support for NVIDIA* and AMD* libraries in addition to Intel® CPUs, GPUs and other accelerators. In other words, oneMKL APIs have a common front end with a hardware-specific back end.
oneMKL is an important part of the oneAPI specification, which has key math library interfaces for:
- Dense linear algebra
- Sparse linear algebra
- Random number generators
- Discrete Fourier transforms
- Vector math
- Summary statistics
oneMKL random number generators (RNGs) provide routines implementing commonly used pseudorandom, quasi-random, and non-deterministic engines with continuous and discrete distributions. oneMKL RNGs are used in Monte Carlo simulations, financial forecasting, risk management, cryptography, and other applications. The oneMKL RNG open-source interface greatly expands the coverage of common math functions.
The oneMKL open-source interfaces currently support the dense linear algebra BLAS domain as well as the RNG domain. Dense linear algebra and RNG open-source interfaces, with support for the Intel® oneAPI Math Kernel Library on Intel CPU and Intel GPU back ends, are now available for download. We encourage oneAPI partners to use the new interfaces to support additional cross-architecture hardware devices. In future development, additional open-source interfaces may be added for the LAPACK, discrete Fourier transforms and vector math. The oneAPI specification supports cross-architecture programming, extending developer programming models to enable a diverse set of hardware through language, a set of library APIs, and a low-level hardware interface. To promote compatibility and enable developer productivity and innovation, the oneAPI specification builds on industry standards and provides an open, cross-platform developer stack.
Address the data deluge and get number-crunching today with oneMKL for heterogeneous hardware. Join us to enable new hardware and extend math interfaces to other math domains.
- Download the oneMKL open-source interface, which supports the BLAS and RNG domains.
- Watch a oneMKL webinar.
- Learn more about the oneAPI specification.
oneAPI is a cross-industry, open, standards-based unified programming model that delivers a common developer experience across accelerator architectures—for faster application performance, more productivity, and greater innovation. The oneAPI industry initiative encourages collaboration on the oneAPI specification and compatible oneAPI implementations across the ecosystem.
You May Also Like
Get the Software
Accelerate math processing routines, including matrix algebra, fast Fourier transforms (FFT), and vector math. Part of the Intel® oneAPI Base Toolkit.
Product and Performance Information
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.