UMass Boston


Most of the HPC systems here use the Environment Modulespackage to manage user environment variables.  The module command provides a convenient way for most users to set up their environment for specific software applications.  These commands can also be used within submission scripts.  The module man page shows all available commands, but for most users the key commands are 'module avail', 'module show', 'module load', and 'module list.'

To list all available modules, use 'module avail':

[duse@ravana ~]$ module avail

-------------------------------------- /share/apps/modules-3.2.9/Modules/versions ------------------- 3.2.9 ----------------------------------- /share/apps/modules-3.2.9/Modules/3.2.9/modulefiles -------------- dot module-cvs module-info modules null use.own --------------------------------------------- /share/apps/modules/ravana --------------------------- beast/1.7.4(default) gnu/hydrolight/5.1.4 gnu/structure/2.3.4_4.1.2(default) gnu/all(default) gnu/ima2/8.27.12_4.1.2(default) gnu/tabix/0.2.6_4.1.2(default) gnu/boost/1.52.0_4.1.2(default) gnu/modtran/5.2.1_4.1.2(default) gnu/tophat/2.0.6_4.1.2(default) gnu/bowtie/0.12.8_4.1.2(default) gnu/modtran/5.3.2_4.1.2 intel/compilers/2013.1.117(default) gnu/bowtie2/2.0.2_4.1.2(default) gnu/openmpi/1.4.5_4.1.2 intel/openmpi/1.6.4_13.0.1(default) gnu/cufflinks/2.0.2_4.1.2(default) gnu/openmpi/1.6_4.1.2(default) jdk/1.7.0_07(default) gnu/hydrolight/5.1.2(default) gnu/seadas/6.4(default)

Application modules are in the third category "/share/apps/modules/."  The hierarchical naming convention for applications that depend on the compiler used is to list the compiler first, then the application, followed by the version number of the application and the version number of the compiler.  So the module gnu/openmpi/1.4.5_4.1.2  refers to openmpi version 1.4.5 compiled with the gnu compilers, version 4.1.2. You do not need to type in the full module name, tab-completion works and if a (default) is indicated, you need only refer to the parent (e.g. 'module load gnu/openmpi' will load gnu/openmpi/1.6.4_4.1.2).  

To show information on a particular module, use 'module show'

[duse@ravana ~]$ module show gnu/openmpi


module-whatis    Sets up the OpenMPI environment for the cluster.
setenv           MPI_HOME /usr/local/openmpi-1.6_gnu-4.1.2
append-path      MANPATH /usr/local/openmpi-1.6_gnu-4.1.2/share/man
append-path      PATH /usr/local/openmpi-1.6_gnu-4.1.2/bin
append-path      LD_LIBRARY_PATH /usr/local/openmpi-1.6_gnu-4.1.2/lib
conflict         openmpi

To load (unload) a module, use the module load(unload) command:

[duse@ravana ~]$ module load gnu/openmpi

To show a listing of the loaded modules, use 'module list':

[duse@ravana ~]$ module list

Currently Loaded Modulefiles: 1) modules 2) 3.2.9 3) gnu/openmpi/1.6_4.1.2(default)

IT Research Computing
Healey Library, Lower Level
UMass Boston
100 Morrissey Blvd.
Boston, MA 02125
Book a Consultation