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.cIf you need the sequential MKL routines only then use
nersc$ ftn -qmkl="sequential" test.f90
nersc$ cc -qmkl="sequential" test.cIf ScaLapack routines are needed then
nersc$ ftn -qmkl="cluster" test.f90
nersc$ cc -qmkl="cluster" test.cOther 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.