Intel® oneAPI Math Kernel Library Documentation
Documentation & Code Samples
Documentation
- Get Started Guide
- Release Notes
- System Requirements
- Developer References: C | Fortran | SYCL*
- Developer Guides:
Windows* | Linux*
View Current Intel® oneAPI Math Kernel Library (oneMKL) Documentation
View Legacy Intel® Math Kernel Library (Intel® MKL) Documentation
Library Linking Guidance
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*
- Fourier Correlation
Learn how to implement the Fourier correlation algorithm using SYCL, oneMKL, and Intel® oneAPI DPC++ Library (oneDPL) functions. - 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. - OceanFFT Sample Code cuFFT Migration
The OceanFFT sample simulates an ocean heightfield using oneMKL FFT functionality. Learn how original CUDA source code is migrated to SYCL for portability. - MonteCarloMultiGPU Sample for cuRAND Migration
The MonteCarloMultiGPU sample evaluates fair call price for a given set of European options using the Monte Carlo approach. Learn how to migrate and map cuRAND generator calls to their oneMKL and SYCL API random number generator equivalent.
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.
How to work with code samples:
Training Resources
Get Started
- A Quick Overview of oneMKL [5:47]
- Benefits of oneMKL on CPUs and GPUs [4.55]
- oneMKL - an Advanced Version of Intel MKL
- oneMKL Essentials Learning Path
- How to Use oneMKL
- oneMKL Linking
- oneMKL Verbose Mode: Quick and Easy GPU Library Execution Profiler
Expert Talks
- Why oneMKL? Accelerate Math Computation on the Latest Hardware [59:07]
- Speed Up Math Computations on GPUs with oneMKL [45:22]
Take Advantage of GPUs with SYCL*
- How to Move from CUDA Math Library Calls to oneMKL
- Migrate cuBLAS and cuRAND Operations from CUDA to SYCL
- Random Number Generation with cuRAND and oneMKL
- A C++ API with SYCL Support for Data Fitting
Fourier Transform
- Implement the Fourier Correlation Algorithm [47:37]
- Implement the Fourier Correlation Algorithm Using oneAPI
Random Number Generation
Linear Systems Solvers
- OpenMP Offload: Solving Linear Systems Using oneMKL on GPUs [1:04:16]
- Solving Linear Systems Using oneMKL and OpenMP Target Offloading
Case Studies
{"collectionRelationTags":{"relations":{"EXCLUDE":["etm-08dd1c4874304c9b9987050a09dd8567","etm-05429363730b40109b394df6a76dd677","etm-3baf460d15b141cfba51bdf58d2f2496","etm-96a2a467cd514dff85b6c153b364b0fa","etm-2f5e76b4e5e64d90a794e6a9d8dc26fd","etm-80b662df26a3410eb1ecf99114bc569b","etm-ead3671d63584869ab0df9a593366522","etm-906567252bdc432bbaeb908fabef076f","etm-72cbbe7d977c407e9bd60dc9a5a2d0c2","etm-86fd3d3462554a56b8e3c223be8417e1","etm-454697a6b0ca41e8a0f6606316e92b7c","etm-fc274692325e497dba29db02e84821c2","etm-c216d58933fc4051a502694b29828faa","etm-6f8479a5b1ce453c957fa689bfed124f"],"AND":["etm-086ec8c4b4074875b84ba0e35d214cf5","etm-b0aba7177c084f5c8ead13817de85c67","etm-6b088d69d83243a0aa3b986645a7e74b"]},"featuredIds":[]},"collectionId":"653293","resultPerPage":60.0,"filters":[{"facetId":"ContentType","type":"ContentType","deprecated":true,"name":"ContentType","position":0},{"facetId":"OperatingSystem","type":"OperatingSystem","deprecated":true,"name":"OperatingSystem","position":1},{"facetId":"@stm_10357_en","field":"stm_10357_en","type":"specific","basePath":"Programming Language","displayName":"Programming Language","deprecated":false,"rootFilter":"","position":2}],"coveoRequestHardLimit":"1000","accessDetailsPagePath":"/content/www/us/en/secure/design/internal/access-details.html","collectionGuids":["etm-b0aba7177c084f5c8ead13817de85c67","etm-086ec8c4b4074875b84ba0e35d214cf5","etm-6b088d69d83243a0aa3b986645a7e74b"],"cardView":false,"sorting":"Newest","defaultImagesPath":"/content/dam/www/public/us/en/images/uatable/default-icons","coveoMaxResults":5000,"coveoSplitSize":500,"fpgaFacetRootPaths":"{\"fpgadevicefamily\":[\"Primary Content Tagging\",\"Intel® FPGAs\",\"Intel® Programmable Devices\"],\"quartusedition\":[\"Primary Content Tagging\",\"Intel® FPGAs\",\"Intel® Quartus Software\"],\"quartusaddon\":[\"Primary Content Tagging\",\"Intel® FPGAs\",\"Intel® Quartus Software - Add-ons\"],\"fpgaplatform\":[\"Primary Content Tagging\",\"Intel® FPGAs\",\"Intel® FPGA Platforms\"]}","newWrapperPageEnabled":true,"descendingSortingForNumericalFacetsName":"[\"Intel® Quartus® Prime Pro Edition\",\"Intel® Quartus® Prime Lite Edition\",\"Intel® Quartus® Prime Standard Edition\",\"Quartus® II Subscription Edition\",\"Quartus® II Web Edition\"]","columnsConfiguration":{"idColumn":true,"dateColumn":true,"versionColumn":true,"contentTypeColumn":false,"columnsMaxSize":0},"dynamicColumnsConfiguration":[{"name":"DynamicColumn_id","type":"id","gtv":"ID","width":60,"selected":true},{"name":"DynamicColumn_date","type":"date","gtv":"Date","width":60,"selected":true},{"name":"DynamicColumn_version","type":"version","gtv":"Version","width":135,"selected":true}],"updateCollateralMetadataEnabled":true,"relatedAssetsEnable":true,"disableExpandCollapseAll":false,"enableRelatedAssetsOnExpandAll":false,"disableBlueBanner":false,"isICS":false,"isUPE":false}