MKL¶
The Intel Math Kernel Library (Intel MKL) contains highly optimized, extensively threaded math routines for science, engineering, and financial applications. Core math functions include BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more.
Usage on Perlmutter¶
Intel compilers¶
When using the Intel compilers under PrgEnv-intel, MKL can be conveniently used by adding the -mkl
flag to the compiler line.
nersc$ module load PrgEnv-intel
nersc$ ftn -qmkl test.f90
nersc$ cc -qmkl test.c
If you need the sequential MKL routines only then use
nersc$ ftn -qmkl="sequential" test.f90
nersc$ cc -qmkl="sequential" test.c
If ScaLapack routines are needed then
nersc$ ftn -qmkl="cluster" test.f90
nersc$ cc -qmkl="cluster" test.c
Other compilers¶
Use the Intel MKL Link Line Advisor to determine the appropriate link lines.
Preparing for Perlmutter¶
For more info on alternatives to MKL libraries on Perlmutter, please see the Perlmutter Readiness page.