The available compilers are accessed by loading the relevant module. The two mainly used compilers for Fortran and C/C++ codes are the GNU and Intel compilers.
To use the GNU compilers on our HPC systems you should load the GCC/GCCcore modules and to use the Intel compilers you should load the icc/ifort/iccifort modules.
Compiler toolchains are basically a set of compilers together with a bunch of libraries that provide additional support that is commonly required to build software. In the world of High Performance Computing this usually consists of an library for MPI (inter-process communication over a network), BLAS/LAPACK (linear algebra routines) and FFT (Fast Fourier Transforms).
The most commonly used toolchains on our HPC systems are listed below:
foss
: GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK.fosscuda
: GCC based compiler toolchain with CUDA support, and including OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK.gcccuda
: GNU Compiler Collection (GCC) based compiler toolchain, along with CUDA toolkit.gompi
: GNU Compiler Collection (GCC) based compiler toolchain, including OpenMPI for MPI support.gompic
: GNU Compiler Collection (GCC) based compiler toolchain along with CUDA toolkit, including OpenMPI for MPI support with CUDA features enabled.iimpi
: Compiler toolchain including Intel compilers and Intel MPIintel
: Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL).