ScaLAPACK

About

ScaLAPACK is a doc:lapack replacement/enhancement that runs on parallel distributed memory machines (using MPI).

Supported versions

To check which ScaLAPACK versions and build types are currently supported on Discoverer, execute on the login node:

module avail scalapack

The recipe used for compiling the programming code of ScaLAPACK on Discoverer is publicly available at:

https://gitlab.discoverer.bg/vkolev/recipes/-/tree/main/scalapack

Warning

Intel oneAPI comes with its own ScaLAPACK library, which is included in MKL. We do not recommend the use of that ScaLAPACK library installation. There is a general problem with using Intel MPI library on Discoverer compute nodes, which affects the MPI-based MKL subroutines.

Loading/Compiler affinity

To obtain access to the latest LAPACK load the environment module that matches your compiler requirements and MPI library affinity:

Intel oneAPI builds

  • Open MPI
module load scalapack/2/latest-intel-openmpi
  • MPICH
module load scalapack/2/latest-intel-mpich

NVIDIA HPC SDK build

  • Open MPI
module load scalapack/2/latest-nvidia-openmpi
  • MPICH
module load scalapack/2/latest-nvidia-mpich

AMD AOCC build

  • Open MPI
module load scalapack/2/latest-aocc-openmpi
  • MPICH
module load scalapack/2/latest-aocc-mpich

GNU GCC build

  • Open MPI
module load scalapack/2/latest-gcc-openmpi
  • MPICH
module load scalapack/2/latest-gcc-mpich

Getting help

See Getting help