Using environment modules

The CCIAM provides a large number of already pre-installed software. Sometimes the provided software comes in different versions. For the user environment management (i.e. to set an environment variable or to extend an environment variable like PATH or LD_LIBRARY_PATH) we are using a tool called module. Each pre-installed program or library is having a corresponding module.

The modules are organized in group hierarchy. On the top level the choice is:

  • userspace/all all available modules except the ones in custom group
  • userspace/tr17.10 all modules pre-installed with software stack version 17.10.
  • userspace/custom custom group is dedicated to rarely used or experimental modules

To get to specific software module you have to load the top group module first, for example userspace/tr17.10:

$ module load userspace/tr17.10

The command module avail or module av will display the list of all currently available modules, in this case for the group userspace/tr17.10

$ module avail
————————————- /trinity/shared/modules/groups/ ————————————-
userspace/custom userspace/tr17.10

————————————- /home/.pgi/modulefiles/ ————————————-
openmpi/2.1.2/2018 pgi/2018 PrgEnv-pgi/18.4(default)
pgi/18.4(default) pgi-llvm

————————————- /trinity/shared/modules/tr17.10/x86_64/compiler ————————————-
cuda/7.5 gcc/7.2.0 intel-suite python3/3.6.3
cuda/8.0 intel-compiler/32/2018.0.128 oracle-jdk/1.8.0_171
cuda/9.1 intel-compiler/64/2018.0.128 python2/2.7.14

————————————- /trinity/shared/modules/tr17.10/x86_64/mpi ————————————-
intel-mpi/64/2018.0.128 mvapich2/gcc72/ofed/2.2 mvapich2/icc18/psm2/2.2 openmpi/icc18/ofed/3.0.0
mpich/gcc72/psm2/3.2.1 mvapich2/gcc72/psm2/2.2 openmpi/gcc72/ofed/3.0.0 openmpi/icc18/psm2/3.0.0
mpich/icc18/psm2/3.2.1 mvapich2/icc18/ofed/2.2 openmpi/gcc72/psm2/3.0.0

————————————- /trinity/shared/modules/tr17.10/x86_64/libraries ————————————-
blas/3.7.1 fftw3/icc18/3.3.6-pl2 intel-tbb/32/2018.0.128
blas/gcc72/3.7.1 fftw3/icc18/impi/3.3.6-pl2 intel-tbb/64/2018.0.128
blas/icc18/3.7.1 fftw3/icc18/mvapich2/3.3.6-pl2 lapack/3.7.1
boost/gcc72/1.65.1 fftw3/icc18/openmpi/3.3.6-pl2 lapack/gcc72/3.7.1
boost/gcc72/mvapich2/1.65.1 hdf5/gcc72/1.10.1 lapack/icc18/3.7.1

This list will help you to choose the proper module to use and all you have to do is to load the module of your choice with the same module load module_name command

As soon as the software is updated the new corespondent modules will be made available.

Here the list of useful examples:

Loading the openblas module compiled with gcc support: module load openblas/gcc72/0.2.20.

Unloading the openblas module: module unload openblas/gcc72/0.2.20 or module rm openblas/gcc72/0.2.20

To display the list of already loaded modules: module list.

To purge all loaded modules at once: module purge.

To display the modules documentation: man module.

Dernière mise à jour : 19 September 2018

+33 (0)4 13 94 58 29 / (0)4 13 94 58 27