Compiler Usage

Compiler usage

[GNU Compiler Collection (GCC) Compilers | Intel Compilers | PathScale Compilers | Portland Group (PGI) Compilers ]

Note: Compilers on Kebnekaise is preferrably loaded as part of compiler toolchains. Read our page "Kebnekaise: Installed Compilers" for more about that.

Cluster What Command
Abisko List all versions of compiler (gcc, intel, psc, pgi) module avail <gcc|intel|psc|pgi>
Kebnekaise List all compiler toolchains ml av

OpenMP: All compilers has this included, so it is enough to load the module for a specific compiler and then add the appropriate flag (see Flags).

GNU Compiler Collection (GCC)

Abisko:

You do not need to load anything to use the serial and OpenMP compilers for the GCC compilers, as they are already in your path. You do, however, need to load the MPI library module for them in order to be able to compile your MPI programs. To do that, do:

module load openmpi/gcc

or (preferrably) load a specific version. See relevant versions with:

module avail openmpi/gcc

Kebnekaise:

To get all compiler modules and compiler toolchains: 

ml av

The ones that are using the GCC compilers:

  • GCC: GCC only
  • foss: GCC, OpenMPI, OpenBLAS/LAPACK, FFTW, ScaLAPACK
  • gompi: GCC, OpenMPI
  • gompic: GCC, OpenMPI, CUDA
  • goolfc: gompic, OpenBLAS/LAPACK, FFTW, ScaLAPACK

Remember to load a specific version (see with ml av <module>).

For more information about loading the compilers and other versions of the compilers, read either "Abisko: Installed Compilers" or "Kebnekaise: Installed Compilers".

Compiling, Abisko and Kebnekaise (remember to load the right module first)

Language Compiler name MPI
Fortran77 gfortran mpif77
Fortran90 gfortran mpif90
Fortran95 gfortran N/A
C gcc  mpicc
C++ g++ mpiCC

There are more information to find on the man pages which can be found by typing:

man <compiler name>

Note that on Kebnekaise you need to load the compiler module first. 

Here is a link to a place with more information:

Intel Compilers

The Intel compilers are installed on both Abisko and Kebnekaise. Note that we only have a limited number of licences. Because of this, you may sometimes experince that there is none available. Wait for a little while and try again. 

Abisko:

To use the Intel compilers, load the module:

module load intel

In order to use the Intel compilers with MPI, either load for OpenMPI or for Intel MPI:

module load openmpi/intel

or

module load impi

In both cases you will get the default version. Use module avail to check.

Go here for further information about loading the compilers and other versions of the compilers on Abisko.

Kebnekaise:

To get all compiler modules and compiler toolchains: 

ml av

The ones that are using the Intel compilers:

  • iccifort: icc, ifort
  • iccifortcuda: iccifort, CUDA
  • iimpi: icc, ifort, IntelMPI
  • intel: icc, ifort, IntelMPI, IntelMKL
  • intelcuda: intel, CUDA

Remember to load a specific version (see with ml av <module>).

For more information about loading the compilers and other versions of the compilers, read either "Abisko: Installed Compilers" or "Kebnekaise: Installed Compilers".

Compiling, Abisko and Kebnekaise (remember to load the right module first!)

Language Compiler name MPI
Fortran77 ifort mpif77
Fortran90 ifort mpif90
Fortran95 ifort N/A
C icc  mpicc
C++ icpc mpiCC

There are more information to find on the man pages which can be found by typing 

man <compiler name>

Remember that you need to load the module first!

Here are some links to places with more information:

PathScale compilers

Abisko:

To be able to use the PathScale compilers, load the module

module load psc

Go here for further information about loading the compilers and other versions of the compilers.

Kebnekaise:

This compiler is currently not installed on Kebnekaise.

Compiling on Abisko (remember to load the right module first!)

Language Compiler name MPI
Fortran77 pathf90 mpif77
Fortran90 pathf90 mpif90
Fortran95 pathf95 N/A
C pathcc mpicc
C++ pathCC mpiCC

There are more information to find on the man pages which can be found by typing 

man <compiler name>

Here is a link to a place with more information:

Portland group (PGI) compilers

Abisko:

To be able to use the PGI compilers, load the module

module load pgi

Go here for further information about loading the compilers and other versions of the compilers.

Kebnekaise:

To get all compiler modules and compiler toolchains: 

ml av

The ones that are using the PGI compilers:

  • PGI: pgcc, pgc++, pgf77, pgf90, pgf95
  • pompi: pgcc, pgc++, pgf77, pgf90, pgf95, OpenMP
  • pomkl: pgcc, pgc++, pgf77, pgf90, pgf95, OpenMPI, Intel MKL

Remember to load a specific version (see with ml av <module>).

For more information about loading the compilers and other versions of the compilers, read either "Abisko: Installed Compilers" or "Kebnekaise: Installed Compilers".

Compiling on Abisko and Kebnekaise (remember to load the right module first!)

Language Compiler name MPI
Fortran77 pgf77 mpif77
Fortran90 pgf90 mpif90
Fortran95 pgf95 N/A
C pgcc  mpicc
C++ pgc++ mpiCC

There is also a High Performance Fortran compiler: pghpf.

There are more information to find on the man pages which can be found by typing 

man <compiler name>

Here is a link to a place with more information:

Updated: 2017-02-24, 23:23