This document provides a general summary of new features and important notes about the Intel® Math Kernel Library (Intel® MKL) software product.
Please see the following links to the online resources and documents for the latest information regarding Intel MKL:
Links to documentation, help, and code samples can be found on the main
Intel MKL product page. For technical support visit the
Intel MKL technical support forum and review the articles in the
Intel MKL knowledge base.
Please register your product using your preferred email address. This helps Intel recognize you as a valued customer in the support forum and ensures that you will be notified of product updates. You can read
Intel's Online Privacy Notice Summary if you have any questions regarding the use of your email address for software product registration.
What's New in Intel MKL 11.3 Update 2
- Introduced mkl_finalize function to facilitate usage models when Intel MKL dynamic libraries or third party dynamic libraries are linked with Intel MKL statically are loaded and unloaded explicitly
- Enabled the second generation of Intel® Xeon Phi™ coprocessor in Automatic Offload (AO) and Compiler Assisted Offload (CAO) modes on Linux
- Compiler offload mode now allows using Intel MKL dynamic libraries
- Dynamic libraries for OS X* have run-time dynamic library search path (rpath) to ensure Intel MKL-based applications compatibility with OS X 10.11 (El Capitan) System Integrity Protection (SIP). Please refer to Intel MKL Link Line Advisor for link line changes
- BLAS:
- Improved Intel® Threaded Building Blocks (Intel® TBB) 64-bit threading performance of xSYRK, xHERK, xSYR2K and xHER2K for large K and small N sizes on Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® Advanced Vector Extensions 512 (Intel® AVX-512) and Intel® Many Integrated Core architecture (Intel® MIC Architecture)
- Improved performance of 64-bit HPL on Intel AVX2, Intel AVX-512, Intel® Xeon® processors and Intel MIC Architectures
- Improved BLAS Level 3 performance on Intel AVX-512 Intel MIC Architecture
- Added Intel TBB threading for all BLAS level-1 functions
- Added OpenMP threading for some BLAS level-1 functions: [C,Z]DOTU, ZDOTC, [S,D,C,Z]SCAL, [CS,ZD]SCAL, [S,D]ROTM, I[S,D,C,Z]AMIN, I[S,D,C,Z]AMAX, [S,D, SC, DZ]ASUM and SDSDOT
- Improved GEMM performance on the second generation of Intel Xeon Phi coprocessors
- LAPACK:
- Improved performance of QR factorization for square and for tall-and-skinny matrices
- Improved performance of Cholesky factorization for small matrices
- Improved performance of ?TPTRS, ?GBTRF and ?GBTRS for small matrices
- Improved performance of ?GELQF and ?GESVD for the case when M < N
- Improved performance for row-major matrix storage in LAPACKE interfaces to routines ?LACPY, ?LASET, ?POEQU, ?POEQUB, [SD]POCON, [SD]PORFS, [SD]PORFSX, [SD]POSV, DSPOSV, [SD]POSVX, [SD]POSVXX, [SD]POTRF, [SD]POTRI and[SD]POTRS
- Enabled Automatic Offload in MKL_?GETRFNPI functions
- ScaLAPACK:
- Improved performance of P?GEMM when both operands sub( A ) and sub( B ) are communicated (M, N >> K)
- Improved performance of P?POTRF and P???EVD on suboptimal processor grids by matrix redistribution
- Sparse BLAS:
- Improved performance of DBSRMV for the non-transpose case when alpha=1
- Intel MKL PARDISO:
- Added support for block compressed sparse row (BSR) matrix storage format
- Added optimization for matrixes with variable block structure
- Added support for mkl_progress in Parallel Direct Sparse Solver for Clusters
- Added cluster_sparse_solver_64 interface
- Vector Mathematical Functions:
- Improved performance of c/zConj, c/zDiv, c/zExp, c/zLn, c/zMul, c/zMulByConj, and c/zSqrt functions on Intel Xeon processors and Intel AVX-512 Architectures
What's New in Intel MKL 11.3 Update 1
- Benchmarks:
- Added new Intel® Optimized High Performance Conjugate Gradient (HPCG) Benchmark with second generation of Intel® Xeon Phi coprocessor support
- Improved MP LINPACK benchmark organization by removing sub-optimal MP LINPACK binaries from the product
- Improved MP LINPACK performance for Intel® Advanced Vector Extension 2 (Intel® AVX2) for 64-bit Intel MKL
- BLAS:
- Improved BLAS Level 1 performance for Intel AVX2 and Intel® Advanced Vector Extensions 512 (Intel® AVX512)
- Improved performance of BLAS Level 3 functions (S,D,C,Z)SYMM and (C,Z)HEMM with Intel® Threading Building Blocks (Intel® TBB) threading when left side specified and m>>n and when right side specified and n>>m
- Improved parallel performance of ?GEMM for Intel AVX2 for 64-bit Intel MKL for matrices with moderate dimensions
- Improved BLAS Level 3 performance for Intel AVX512
- Improved performance of (S,D)GEMV for Intel AVX2 for 64-bit Intel MKL
- Improved parallel performance of ?TRSM for Intel AVX2 for 64-bit Intel MKL
- Improved ?NRM2 performance for Intel® Advanced Vector Extension (Intel® AVX) and Intel AVX2 for 32-bit and 64-bit Intel MKL
- Fixed (S,D)GEMM issues for beta=0 cases affecting Intel AVX2 for 64-bit Intel MKL during multithreaded execution
For DGEMM, this affects matrices with N < 4000 and M/nthreads > 5004
For SGEMM, this affects matrices with N < 4000 and M/nthreads > 10008
- Fixed (S,D)SYMM issues for beta=0 cases affecting Intel AVX2 for 64-bit Intel MKL during both multithreaded and sequential execution
For DSYMM, this affects matrices with M/nthreads > 5004
For SSYMM, this affects matrices with M/nthreads > 10008
- LAPACK
- Introduced an Intel TBB threading layer providing Intel MKL composability for DSYEV and DPSTRF
- Added C language LAPACK examples
- Significantly improved performance of (D/S/C/Z)STEDC and (D/S/C/Z)YEVD functions for middle sized matrices with about 4K rows or columns
- Intel MKL PARDISO and Cluster Sparse Solver
- Added Intel TBB threading support
- Added support for block compressed sparse row (BSR) matrix storage format
- Added optimization for matrices with variable block structure
- FFTs
- Significantly improved small 2D and 3D batched FFT performance on Intel Xeon Phi coprocessor and second generation Intel Xeon processor.
- Sparse BLAS:
- Added Intel TBB threading support for matrix-vector multiplication for BSR and CSR matrices
- Improved parallel performance of sparse matrix by sparse matrix multiplication for large matrices with the inspector-executor API
- Extended Eigensolver
- Improved diagnostics in generalized eigenproblems for matrices which are not positive definite
- Random Number Generators
- Improved performance of MCG59 and MCG31M1 basic generators and Gaussian ICDF distribution
- Summary Statistics
- Improved performance of covariance, correlation and cross product for cases of larger p dimension
- Vector Mathematics
- Improved performance for vsRint, vsNearbyInt, vsConj, and vdConj functions
- Improved accuracy for the EP version of the vdDiv function, the HA version of the vsTan function, and the LA version of the vdTan function
- Fixed incorrect setting of VML_STATUS_ACCURACYWARNING in the HA and LA complex functions vzAdd, vzSub, vzMul, vzMulByConj, and vzDiv
- ScaLAPACK
- Added code examples demonstrating use of ScaLAPACK functionality
- Added mkl_version.h include file, which can be used to determine the version of Intel MKL at the time of compilation
- Deprecation notices:
- The SP2DP interface is deprecated and may be removed in a future release
- Use of MPICH 1 has been deprecated and support may be removed in a future release
What's New in Intel MKL 11.3
- Introduced high bandwidth memory (MCDRAM) support for second generation of Intel® Xeon Phi coprocessors
- Introduced MPI wrappers that allow users to build custom BLACS library for most MPI implementations
- Cluster components (Cluster Sparse Solver, Cluster FFT, ScaLAPACK) are now available for OS X*
- Extended the Intel MKL memory manager to improve scaling on large SMP systems
- Introduced a TBB threading layer providing Intel MKL composability with TBB-based applications. BLAS Level 3, LAPACK(?GETRF, ?POTRF, ?GEQRF, ?GELQF, ?(OR/UN)M(QR/QL/LQ/RQ)) and the Poisson solver are parallelized with TBB. All other Intel MKL functions are not explicitly threaded in the layer, but may benefit from listed parallelization
- Added new service functions to provide more control for Intel MKL Automatic Offload for Intel Xeon Phi systems. These functions include mkl_mic_get_meminfo, mkl_mic_get_cpuinfo, mkl_mic_set_flags, mkl_mic_get_flags, mkl_mic_clear_status, and mkl_mic_get_status
- Optimizations for the second generation of Intel Xeon Phi coprocessors are dispatched by default. Call to mkl_enable_instruction routine is not required starting from this release
- Sparse BLAS: Introduced new 2-stage (inspector-executor) APIs for Level 2 and Level 3 sparse BLAS functions. This feature provides performance benefits to some applications (e.g. iterative solvers), where a matrix structure analysis done in the first (inspector) stage allows better optimizations for operations in the subsequent (executor) stage. Inspector-executor API provides the following features:
- Support for 0-based and 1-based indexing, row-major and column-major ordering of matrices, and any combination of these storage schemes
- Parallel sparse matrix format converters with significantly improved performance
- Parallel sparse matrix transposition operation and improved performance for matrix-vector and matrix-matrix operations with transposed matrix
- Parallel triangular sparse solver functionality for CSR and BSR formats
- Improved performance for sparse matrix-matrix and matrix-vector operations in BSR format
- BLAS:
- Introduced ?GEMM_BATCH and (C/Z)GEMM3M_BATCH functions to perform multiple independent matrix-matrix multiply operations
- Improved parallel performance of (D/S)SYMV on all Intel Xeon processors
- Improved (C/D/S/Z/DZ/SC)ROT performance for Intel Advanced Vector Extensions (Intel AVX) architectures in 64-bit Intel MKL
- Improved (C/Z)ROT performance for Intel Advanced Vector Extensions 2 (Intel AVX2) architectures in 64-bit Intel MKL
- Improved parallel performance of ?SYRK/?HERK, ?SYR2K/?HER2K, and DGEMM for cases with large k sizes on Intel AVX2 architectures in 64-bit Intel MKL
- Improved ?SYRK/?HERK and ?SYR2K/?HER2K performance on Intel Xeon Phi coprocessors
- Improved parallel and serial performance of xTRSM on Intel AVX2 64-bit Intel MKL
- Improved serial performance of STRMM for small triangular matrix (dimension less than or equal to 10) on Intel AVX2 for 64-bit Intel MKL
- Improved BLAS level 3 functionality performance for second generation of Intel Xeon Phi coprocessors
- LAPACK and ScaLAPACK
- LAPACK 3.5.0 compatibility provides 70 new functions, including symmetric/hermitian LDLT factorization with rook pivoting, and CS decomposition for tall and skinny matrices with orthonormal columns
- Improved performance of LU (?GETRF), QR(?GEQRF) and Cholesky(?POTRF) on Intel AVX2 architectures
- Improved performance of Intel® Optimized LINPACK Benchmark shared memory (SMP) implementation for Intel AVX2
- Significantly improved performance of LU factorization for non-square matrices on Intel AVX2 architectures
- Added new routines for incomplete LU factorization without pivoting
- Supporting GNU FORTRAN interfaces in ScaLAPACK
- Improved the performance of LU factorization when CNR (conditional numerical reproducibility) is enabled, narrowing the performance gap between CNR-on and CNR-off to no more than 5%
- Improved performance of symmetric eigensolver on Intel AVX2 architectures, for cases where only eigenvalues are computed
- Improved performance of SVD for cases where singular vectors are computed on Intel AVX or Intel AVX2 architectures, and when M>=N and singular vectors are not needed
- Intel MKL PARDISO
- Significantly improved scalability on Intel Xeon Phi coprocessors
- Random Number Generators
- Introduced counter-based pseudorandom number generator ARS-5 based on the Intel AES-NI instruction set
- Introduced counter-based pseudorandom number generator Philox4x32-10
- FFTs
- Improved 2D and 3D FFT performance on Intel AVX2 architectures
- Extended FFTW* interface compatibility by providing Fortran MPI wrappers for FFTW3* interface, support for transposed FFT and explicit transposition, thread-safe plan creation and execution routines
- Cluster Sparse Solver:
- Improved workload balancing algorithm providing better performance on hybrid clusters on Intel Xeon processors and Intel Xeon Phi coprocessors
- Documentation:
- Introduced a new C-language version of the Intel MKL Reference manual, the Reference Manual for Intel® Math Kernel Library – C is available at /documentation_2016/en/mkl/common/mklman-c/index.htm.It documents a subset of the product domains available in the full Reference Manual for Intel® Math Kernel Library, which generally documents Fortran syntax. The domains documented in the C version include:
- Basic Linear Algebra Subprograms (BLAS)
- Sparse BLAS
- LAPACK routines for solving systems of linear equations, least squares problems, eigenvalue and singular value problems, and Sylvester equations
- Direct and Iterative Sparse Solver Routines
- Extended Eigensolver Routines
- Vector Mathematical Functions
- Vector Statistical Functions
- General Fast Fourier Transform (GGT) functions
- Cluster FFT functions
- Tools for solving non-linear optimization problems and partial differential equations
- Deprecation Notices:
- Fortran 77 headers are removed. Applications relying on these headers should be updated to include .fi headers instead
- Known Limitation
- Applications using parallel MKL may occasionally hang if run on Red Hat Enterprise Linux 6.0 kernel version 2.6.32-71.el6, with backtrace showing pthread_create() on top of the call stack. This issue is described in Red Hat Bugzilla ticket 750419 and is fixed in a later kernel release. Consider upgrading your Linux version
Product Contents
Now Intel MKL consists in one package for both IA-32 and Intel® 64 architectures and in online installer
Technical Support
If you did not register your Intel software product during installation, please do so now at the Intel® Software Development Products Registration Center. Registration entitles you to free technical support, product updates, and upgrades for the duration of the support term.
For general information about Intel technical support, product updates, user forums, FAQs, tips and tricks and other support questions, please visit http://www.intel.com/software/products/support/.
Note: If your distributor provides technical support for this product, please contact them rather than Intel.
For technical information about Intel MKL, including FAQs, tips and tricks, and other support information, please visit the Intel MKL forum: http://software.intel.com/en-us/forums/intel-math-kernel-library/ and browse the Intel MKL knowledge base: http://software.intel.com/en-us/articles/intel-mkl-kb/all/.
Attributions
As referenced in the End User License Agreement, attribution requires, at a minimum, prominently displaying the full Intel product name (e.g. "Intel® Math Kernel Library") and providing a link/URL to the Intel MKL homepage (https://software.intel.com/en-us/intel-mkl) in both the product documentation and website.
The original versions of the BLAS from which that part of Intel MKL was derived can be obtained from http://www.netlib.org/blas/index.html.
The original versions of LAPACK from which that part of Intel MKL was derived can be obtained from http://www.netlib.org/lapack/index.html. The authors of LAPACK are E. Anderson, Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen. Our FORTRAN 90/95 interfaces to LAPACK are similar to those in the LAPACK95 package at http://www.netlib.org/lapack95/index.html. All interfaces are provided for pure procedures.
The original versions of ScaLAPACK from which that part of Intel MKL was derived can be obtained from http://www.netlib.org/scalapack/index.html. The authors of ScaLAPACK are L. S. Blackford, J. Choi, A. Cleary, E. D'Azevedo, J. Demmel, I. Dhillon, J. Dongarra, S. Hammarling, G. Henry, A. Petitet, K. Stanley, D. Walker, and R. C. Whaley.
The Intel MKL Extended Eigensolver functionality is based on the Feast Eigenvalue Solver 2.0 http://www.ecs.umass.edu/~polizzi/feast/
PARDISO (PARallel DIrect SOlver)* in Intel MKL was originally developed by the Department of Computer Science at the University of Basel http://www.unibas.ch . It can be obtained at http://www.pardiso-project.org.
Some FFT functions in this release of Intel MKL have been generated by the SPIRAL software generation system (http://www.spiral.net/) under license from Carnegie Mellon University. The Authors of SPIRAL are Markus Puschel, Jose Moura, Jeremy Johnson, David Padua, Manuela Veloso, Bryan Singer, Jianxin Xiong, Franz Franchetti, Aca Gacic, Yevgen Voronenko, Kang Chen, Robert W. Johnson, and Nick Rizzolo.
License Definitions
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or death. SHOULD YOU PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND HOLD INTEL AND ITS SUBSIDIARIES, SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH, HARMLESS AGAINST ALL CLAIMS COSTS, DAMAGES, AND EXPENSES AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR INDIRECTLY, ANY CLAIM OF PRODUCT LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY WAY OUT OF SUCH MISSION CRITICAL APPLICATION, WHETHER OR NOT INTEL OR ITS SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR WARNING OF THE INTEL PRODUCT OR ANY OF ITS PARTS.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-4725, or by visiting Intel's Web Site
Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different processor families. See http://www.intel.com/products/processor_number for details.
BlueMoon, BunnyPeople, Celeron, Celeron Inside, Centrino, Centrino Inside, Cilk, Core Inside, E-GOLD, Flexpipe, i960, Intel, the Intel logo, Intel AppUp, Intel Atom, Intel Atom Inside, Intel Core, Intel Inside, Intel Insider, the Intel Inside logo, Intel NetBurst, Intel NetMerge, Intel NetStructure, Intel SingleDriver, Intel SpeedStep, Intel Sponsors of Tomorrow., the Intel Sponsors of Tomorrow. logo, Intel StrataFlash, Intel vPro, Intel Xeon Phi, Intel XScale, InTru, the InTru logo, the InTru Inside logo, InTru soundmark, Itanium, Itanium Inside, MCS, MMX, Moblin, Pentium, Pentium Inside, Puma, skoool, the skoool logo, SMARTi, Sound Mark, Stay With It, The Creators Project, The Journey Inside, Thunderbolt, Ultrabook, vPro Inside, VTune, Xeon, Xeon Inside, X-GOLD, XMM, X-PMU and XPOSYS are trademarks of Intel Corporation in the U.S. and/or other countries.
*Other names and brands may be claimed as the property of others.
| Optimization Notice |
|
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more
information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
|
Copyright © 2002-2016, Intel Corporation. All rights reserved.