Loading Software Components

As a new user you will only have access to the basic software provided within the standard Linux environment.

The cluster provides a range of software and tools using a module system based on Lmod.

Basic Usage

To get a list of modules currently available in the cluster, use:

module avail

This would produce output looking like this:

-------------------------- /opt/ohpc/pub/modulefiles ---------------------------
 AnsysEM/16.2       Radioss/13.0          papi/5.4.1
 CFX/17.2           autotools             prun/1.0
 EasyBuild/2.5.0    clustershell/1.7.1    valgrind/3.10.1
 FLUENT/17.2        gnu/5.3.0
 Matlab/2016a       intel/16.0.3.210

To use the software contained within a particular module, for example the Intel compilers, then use the command:

module load intel

to always load the latest version of the Intel compilers, or:

module load intel/16.0.3.210

to always load that particular version.

Hierarchical Modules

The module system is hierarchical in nature in that some modules are dependent on others. This means that some modules will not appear in the list until their ‘parent’ modules have been loaded. For example, there are a number of flavours of MPI but each depends on which compilers are being used.

Loading the Intel compilers and then listing available modules will show a larger list than before.

------------------------ /opt/ohpc/pub/moduledeps/intel ------------------------
 hdf5/1.8.16       mvapich2/2.2rc2        ocr/1.0.1 pdtoolkit/3.21
 metis/5.1.0       numpy/1.10.2           openmpi/1.10.3 superlu/5.1

-------------------------- /opt/ohpc/pub/modulefiles ---------------------------
 AnsysEM/16.2      Radioss/13.0           papi/5.4.1
 CFX/17.2          autotools              prun/1.0
 EasyBuild/2.5.0   clustershell/1.7.1     valgrind/3.10.1
 FLUENT/17.2       gnu/5.3.0
 Matlab/2016a      intel/16.0.3.210 (L)

Where:
 L: Module is loaded

These dependant modules can then be loaded using the normal command.

Making Module Selection permanent

Normally the process of loading modules must be performed every time a user logs in. If you find you are always loading the same modules then you can put those commands in a file in your home directory called “.bashrc”. This file gets executed every time you log in.