Compiling

Compilers

The following compilers are available on lens:

Message Passing Libraries

Open MPI is the default supported message passing libraries provided on lens. Upon login, the default versions of PGI and Open MPI are added to each users environment through a programming environment module.

Users do not need to make any environment changes to use the default version of PGI and Open MPI. However, if a compiler or version is required, it is important to use the correct Open MPI build for each compiler version. To aid users in pairing the correct compiler and Open MPI builds, programming environment modules are provided. The programming environment modules will load the correct pairing of compiler version and Open MPI build. We highly recommend that the programming environment modules be used when changing compilers and compiler version.

The following programming environment modules are available on lens:

  • PE-pgi
  • PE-pathscale
  • PE-gnu

To change the default loaded PGI environment to the default Pathscale environment use:
module unload PE-pgi
module load PE-pathscale

To change the default loaded PGI environment to the Pathscale 3.0 environment use:
module swap PE-pgi PE-pathscale/3.0

Note that if you want to use a specific compiler version, say PGI 7.1.5, you would first load the PGI environment and then swap the compiler versions, like:
module load PE-pgi
module swap pgi pgi/7.1.5

Compiling

Serial

For serial builds, see the individual compiler pages:


MPI

The following compilers can be used to build codes using MPI:

  • mpicc
  • mpiCC
  • mpif77
  • mpif90