Performance: Ready to Use
Intel® Math Kernel Library (Intel® MKL) includes a wealth of routines to accelerate application performance and reduce development time. Today’s processors have increasing core counts, wider vector units and more varied architectures. The easiest way to take advantage of all of that processing power is to use a carefully optimized computing math library designed to harness that potential. Even the best compiler can’t compete with the level of performance possible from a handoptimized library.
Because Intel has done the engineering on these readytouse, royaltyfree functions, you’ll not only have more time to develop new features for your application, but in the long run you’ll also save development, debug and maintenance time while knowing that the code you write today will run optimally on future generations of Intel processors.
Intel® MKL includes highly vectorized and threaded Linear Algebra, Fast Fourier Transforms (FFT), Vector Math and Statistics functions. Through a single C or Fortran API call, these functions automatically scale across previous, current and future processor architectures by selecting the best code path for each.
Intel® MKL delivers industryleading performance on Monte Carlo and other mathintensive routines
Quotes
“I’m a C++ and Fortran developer and have high praise for the Intel® Math Kernel Library. One nice feature I’d like to stress is the bitwise reproducibility of MKL which helps me get the assurance I need that I’m getting the same floating point results from run to run."
Franz Bernasek
CEO and Senior Developer, MSTC Modern Software Technology
“Intel MKL is indispensable for any highperformance computer user on x86 platforms.”
Prof. Jack Dongarra,
Innovative Computing Lab,
University of Tennessee, Knoxville
Comprehensive Math Functionality – Covers Range of Application NeedsIntel® MKL contains a wealth of threaded and vectorized complex math functions to accelerate a wide variety of software applications. Why write these functions yourself when Intel has already done the work for you? Major functional categories include Linear Algebra, Fast Fourier Transforms (FFT), Vector Math and Statistics. Clusterbased versions of LAPACK and FFT are also included to support MPIbased distributed memory computing. 

Click to enlarge 
Standard APIs – For Immediate Performance ResultsWherever available, Intel® MKL uses de facto industry standard APIs so that minimal code changes are required to switch from another library. This makes it quick and easy to improve your application performance through simple function substitutions or relinking. Simply substituting Intel® MKL’s LAPACK (Linear Algebra PACKage), for example, can yield 500% or higher performance improvement (benchmark left.) In addition to the industrystandard BLAS and LAPACK linear algebra APIs, Intel® MKL also supports MIT’s FFTW C interface for Fast Fourier Transforms. 
Click to enlarge 
Highest Performance and Scalability across Past, Present & Future Processors – Easily and AutomaticallyBehind a single C or Fortran API, Intel® MKL includes multiple code paths  each optimized for specific generations of Intel and compatible processors. With no codebranching required by application developers, Intel® MKL utilizes the best code path for maximum performance. Even before future processors are released, new code paths are added under these same APIs. Developers just link to the newest version of Intel® MKL and their applications are ready to take full advantage of the newest processor architectures. In the case of the Intel® Many Integrated Core Architecture (Intel® MIC Architecture), in addition to full native optimization support, Intel® MKL can also automatically determine the best load balancing between the host CPU and the Intel® Xeon® Phi™ coprocessor. 
Click to enlarge 
Flexibility to Meet Developer RequirementsDevelopers have many requirements to meet. Sometimes these requirements conflict and need to be balanced. Need consistent floating point results with the best application performance possible? Want faster vector math performance and don’t need maximum accuracy? Intel® MKL gives you control over the necessary tradeoffs. Intel® MKL is also compatible with your choice of compilers, languages, operating systems, linking and threading models. One library solution across multiple environments means only one library to learn and manage. 
Feature  Benefit 

Conditional Numerical Reproducibility 
Overcome the inherently nonassociativity characteristics of floatingpoint arithmetic results with new support in the Intel MKL. New in this release is the ability to achieve reproducibility without memory alignment. 
New and improved optimizations for Haswell Intel® Core™, Intel® microarchitecture code name Ivy Bridge, future Broadwell processors and Intel® Xeon® Phi™ coprocessors 
Intel MKL is optimized for the latest and upcoming processor architectures to deliver the best performance in the industry. For example, new optimizations for the fusedmultiplyadd (FMA) instruction set introduced in Haswell Core processors deliver up to 2x performance improvement for floating point calculations. 
Automatic offload and compute load balancing between Intel Xeon processors and Intel Xeon Phi coprocessors – Now for Windows* 
For selected linear algebra functions, Intel MKL can automatically determine the best way to utilize a system containing one or more Intel Xeon Phi coprocessors. The developer simply calls the MKL function and it will take advantage of the coprocessor if present on the system. New functions added for this release plus Windows OS support. 
ExtendedEigensolver Routines based on the FEAST algorithm 
New sparse matrix Eigensolver routines handle larger problem sizes and use less memory. APIcompatibility with the open source FEAST Eigenvalue Solver makes it easy to switch to the highly optimized Intel MKL implementation. 
Linear Algebra
Intel® MKL BLAS provides optimized vectorvector (Level 1), matrixvector (Level 2) and matrixmatrix (Level 3) operations for single and double precision real and complex types. Level 1 BLAS routines operate on individual vectors, e.g., compute scalar product, norm, or the sum of vectors. Level 2 BLAS routines provide matrixvector products, rank 1 and 2 updates of a matrix, and triangular system solvers. Level 3 BLAS level 3 routines include matrixmatrix products, rank k matrix updates, and triangular solvers with multiple righthand sides.
Intel® MKL LAPACK provides extremely welltuned LU, Cholesky, and QR factorization and driver routines that can be used to solve linear systems of equations. Eigenvalue and leastsquares solvers are also included, as are the latest LAPACK 3.4.1 interfaces and enhancements.
If your application already relies on the BLAS or LAPACK functionality, simply relink with Intel® MKL to get better performance on Intel and compatible architectures.
Fast Fourier Transforms
Intel® MKL FFTs include many optimizations and should provide significant performance gains over other libraries for medium and large transform sizes. The library supports a broad variety of FFTs, from single and double precision 1D to multidimensional, complextocomplex, realtocomplex, and realtoreal transforms of arbitrary length. Support for both FFTW* interfaces simplifies the porting of your FFTWbased applications.
Vector Math
Intel® MKL provides optimized vector implementations of computationally intensive core mathematical operations and functions for single and double precision real and complex types. The basic vector arithmetic operations include elementbyelement summation, subtraction, multiplication, division, and conjugation as well as rounding operations such as floor, ceil, and round to the nearest integer. Additional functions include power, square root, inverse, logarithm, trigonometric, hyperbolic, (inverse) error and cumulative normal distribution, and pack/unpack. Enhanced capabilities include accuracy, denormalized number handling, and error mode controls, allowing users to customize the behavior to meet their individual needs.
Statistics
Intel® MKL includes random number generators and probability distributions that can deliver significant application performance. The functions provide the user the ability to pair RandomNumber Generators such as Mersenne Twister and, Niederreiter with a variety of Probability Distributions including Uniform, Gaussian and Exponential.
Intel® MKL also provides computationally intensive core/building blocks for statistical analysis both in and outofcore. This enables users to compute basic statistics, estimation of dependencies, data outlier detection, and missing value replacements. These features can be used to speedup applications in computational finance, life sciences, engineering/simulations, databases, and other areas.
Data Fitting
Intel® MKL includes a rich set of splines functions for 1dimensional interpolation. These are useful in a variety of application domains including data analytics (e.g. histograms), geometric modeling and surface approximation. Splines included are linear, quadratic, cubic, lookup, stepwise constant and userdefined.
What’s New
Conditional Bitwise Reproducible Results
When exact reproducible calculations are required, Intel® MKL gives developers control over the tradeoffs to maximize performance across a set of target processors while delivering identical floating point results
Optimized for Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® microarchitecture code name Ivy Bridge and Intel® Many Integrated Core Architecture (Intel® MIC Architecture) processor architectures
Intel® MKL is optimized for the latest and upcoming processor architectures to deliver the best performance in the industry. Support for the new digital random number generator provides truly random seeding of statistical calculations.
Automatic offload and compute load balancing between Intel® Xeon® processor and Intel® Xeon Phi™ coprocessors
For Linear Algebra functionality, Intel® MKL can automatically determine the best way to utilize a system containing one or more Intel® MIC processors. The developer simply calls an MKL function and doesn’t have to worry about the details.
Data Fitting functions
A rich set of splines are now included to optimize 1dimensional interpolation calculations used in a variety of application domains
Conditional Bitwise Reproducible Results
When exact reproducible calculations are required, Intel® MKL gives developers control over the tradeoffs to maximize performance across a set of target processors while delivering identical floating point results
Optimized for Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® microarchitecture code name Ivy Bridge and Intel® Many Integrated Core Architecture (Intel® MIC Architecture) processor architectures
Intel® MKL is optimized for the latest and upcoming processor architectures to deliver the best performance in the industry. Support for the new digital random number generator provides truly random seeding of statistical calculations.
Automatic offload and compute load balancing between Intel® Xeon® processor and Intel® Xeon Phi™ coprocessors
For Linear Algebra functionality, Intel® MKL can automatically determine the best way to utilize a system containing one or more Intel® MIC processors. The developer simply calls an MKL function and doesn’t have to worry about the details.
Data Fitting functions
A rich set of splines are now included to optimize 1dimensional interpolation calculations used in a variety of application domains
Click on images for a larger view of the benchmark graphic.

Click on images for a larger view of the benchmark graphic.
Linear Algebra Performance Charts 

Application Benchmark Performance Chart 
Batch 1D FFT Performance Chart 
Black Scholes Chart 
Videos to help you get started.
Previously recorded Webinars:
 Powered by MKL Accelerating NumPy and SciPy Performance with Intel® MKL Python
 Get Ready for Intel® Math Kernel Library on Intel® Xeon Phi™ Coprocessor
 Beginning Intel® Xeon Phi™ Coprocessor Workshop: Advanced Offload Topics
 Accelerating financial services applications using Intel® Parallel Studio XE with the Intel® Xeon Phi™ coprocessor
Featured Articles
More Tech Articles
Pages
You can reply to any of the forum topics below by clicking on the title. Please do not include private information such as your email address or product serial number in your posts. If you need to share private information with an Intel employee, they can start a private thread for you.
New topic Search within this forum Subscribe to this forum
Pages
Choose a topic:
 Can I redistribute the Intel Math Kernel Library with my application?

Yes. When you purchase Intel MKL, you receive rights to redistribute computational portions of Intel MKL with your application. The evaluation versions of Intel MKL do not include redistribution rights. The list of files that can be redistributed is provided in redist.txt included in the Intel MKL distribution with product license.
 Are there royalty fees for using Intel MKL?

No. There is no per copy royalty fee. Check the Intel MKL end user license agreement (EULA) for more details.
 What files am I allowed to redistribute?

In general, the redistributable files include the linkable files (.DLL and .LIB files for Windows*, .SO and .A files for Linux*). With your purchase of Intel MKL (and updates through the support service subscription), you receive the redist.txt file which outlines the list of files that can be redistributed. The evaluation versions of Intel MKL do not include redistribution rights. See EULA for all terms.
 Is there a limit to the number of copies of my application that I can ship which include Intel MKL redistributables?

You may redistribute an unlimited number of copies of the files that are found in the directories defined in the Redistributables section of the EULA.
 How many copies of Intel MKL do I need to secure for my project team or company?

The number of Intel MKL copies that you need is determined by the number of developers who are writing code, compiling, and testing using Intel MKL API, For example, five developers in an organization working on building code with Intel MKL will require five Intel MKL licenses. View the EULA for complete details.
 Do I need to get a license for each machine being used to develop and test applications using Intel MKL library?

The number of licenses for Intel MKL that you need are determined by the number of developers and build machines that may be in simultaneous use in your organization. These can be deployed on any number of machines on which the application is built and/or tested as long as there is only the number of licensed copies in use at any given time. For example a development team of five developers using ten machines simultaneously for development and test activities with Intel MKL, will be required to get ten licenses of Intel MKL. View the EULA for complete details.
 Do I need to buy an Intel MKL license for each copy of our software that we sell?

No, there is no royalty fee for redistributing Intel MKL files with your software. By licensing Intel MKL for your developers, you have rights to distribute the Intel MKL files with your software for an unlimited number of copies. For more information, please refer to the EULA.
 Where can I view the Intel MKL license agreement before making a decision to purchase the product?

The number of copies of Intel MKL that you need is determined by the number of developers who are writing code, compiling, and testing using the Intel MKL API, as well as the number of build machines involved in compiling and linking, which need the full Intel MKL development tools file set. See EULA for all terms.
Intel® Math Kernel Library 11.1
Getting Started?
Click the Learn tab for guides and links that will quickly get you started.
Get Help or Advice
Search Support Articles
Forums  The best place for timely answers from our technical experts and your peers. Use it even for bug reports.
Support  For secure, webbased, engineertoengineer support, visit our Intel® Premier Support web site. Intel Premier Support registration is required.
Download, Registration and Licensing Help  Specific help for download, registration, and licensing questions.
Resources
Release Notes  View Release Notes online!
Fixes List  View Compiler Fixes List
Documentation:
Reference Manual
Linux*  Windows*  OS X*
Documentation for other software products
Featured Support Topics
**Source: Evans Data Software Developer surveys 20112013
OS Support
Windows*
Linux*
OS X*
Languages
C, C++, Fortran
Related Content
Documentation:
Reference Manual
Linux*  Windows*  OS X*
Product Brief
Release Notes
Case Studies
Forums
Blogs
Events
Learning Lab
Software EULA
Top Features
 Vectorized and threaded for highest performance on all Intel and compatible processors
 Compatible with all C, C++ and Fortran compilers
 Royaltyfree, per developer licensing for low cost deployment