Intel Math Kernel Library
General
The Math Kernel Library (MKL) from Intel offers highly optimized,
threadsafe, math routines for science and engineering. See the product
info from Intel for more details. [here]. The library contains:
 Linear Algebra  BLAS and LAPACK
 Linear Algebra  Sparse Solvers
 Fast Fourier Transforms
 Vector Math Library
 Vector Statistical Library (Random Number Generators)
Manual
A manual for Linux platforms is available. [here]
Essentials
The MKL is divided into highlevel libraries (ScaLAPACK, LAPACK,
sparse solver) and processor specific kernels (BLAS, FFT, etc.). The
high level libraries are optimized without regard to the processor and
can be used effectively on Intel processors in general, whereas the
kernels are optimized for specific architectures.
The math routines are linked into your application. If you link an
application on a cluster you should not use threading and the link
command may look like:
ifort o myprogram.x myprogram.o L$MKL_ROOT lmkl lmkl_lapack
If you link an application on an sharedmemory machine you may want to
use threading and the link command may look like:
ifort o myprogram.x L$MKL_ROOT myprogram.o lmkl_lapack lmkl lguide lpthread
Note:
 On Mozart we recommend use of SGIs math library called
SCSL rather than MKL.
 If the variable OMP_NUM_THREADS is not set, MKL routines
will run on the number of threads equal to 1 (except for the sparse
solver where the default number of threads is the number of processors
in the system). It is recommended that you always set OMP_NUM_THREADS
to the number of processors you wish to use in your application.
Page last modified: 20070919 11:54
For more information contact us at
info@nsc.liu.se.
