High Performance Computing

LAPACK/BLAS Libraries

LAPACK is a commonly used linear algebra library, and is written to use subroutines provided by the BLAS (Basic Linear Algebra Subprograms) library. There are a number of versions available, and some have been provided alongside the Intel and PGI compilers to run particularly well with these compilers. These versions are MKL, ACML and GotoBlas, and more details are given below.

  • MKL:The Intel Math Kernel Library is licensed on the Nottingham cluster, and is recommended for use with the Intel compiler.
    Appropriate environment can be set by use of the intel/mkl/111 module:
    module load intel/mkl/111
    To link MKL libraries the linker will need to be notified of the location of the libraries:
    -L/opt/intel/Compiler/11.1/mkl/lib/em64t
    The various libraries will need to be linked via the '-l' option, and the precise options to use will depend on your application.

    Check the user guide in /opt/intel/Compiler/11.1/Documentation/en_US/mkl/userguide.pdf for more information.
    Example programs can be found in /opt/intel/Compiler/11.1/mkl/examples

  • ACML: The AMD Core Math Library is available with the PGI compiler distribution on the Nottingham cluster: /opt/pgi/linux86-64/9.0-4/lib and /opt/pgi/linux86-64/9.0-4/libso. To link ACML, the following option will be needed:
    -L/opt/pgi/linux86-64/9.0-4/libso -lacml
    More information is available in the user guide in /opt/pgi/linux86-64/7.1/doc/acml.pdf

  • Goto Blas: Goto Blas is an implementation of the BLAS routines produced by the Texas Advanced Computing Centre and one that is supposed to offer fast performance. Streamline have installed two old versions in /usr/local/lib64, one for opteron (libgoto_opt- 64_1024-r0.97.so) and one for intel (libgoto_p4-64_1024-r0.96.so). If newer ones are required, The University can register and download them, but Streamline cannot do this without cost. Please contact hpc@nottingham.ac.uk if you have a requirement for Goto Blas