Using environment modules

A brief introduction to environment modules.

What are modules?

Environment modules provide a central installation of software available to multiple users on the same computer system.

Individual software modules can be loaded and unloaded easily using the module command, which dynamically modifies the user’s shell environment as needed.

For each module, configuration files are created and maintained by system administrators.

As such, new modules can be requested from system administrators (refer to the Contact section), subject to time and availability.

List available modules

The module avail command can be used to list modules currently available.

module avail

This command generally displays an uncessarily large list of modules.

The command can be given a pattern of module names to search for.

For instance:

module avail python

List module names with the prefix ‘python’.

Search modules

The module search command is an alternative method for searching modules by keyword.

module search python

Search modules with the keyword ‘python’.

List modules currently loaded

The module list command can be used to list modules that are currently load

module list

List modules currently loaded.

Load modules

The commands module load and module add can both be used to load modules (one or more module per command).

For instance:

module load fastqc

Load a module without specifying the version.

Multiple versions may be available for the same module name (e.g., fastqc/0.11.5, fastqc/0.11.9).

In those cases, we recommend specifying explicly the version that you wish to load.

For instance:

module load fastqc/0.11.9

Load a module.

Unload modules

The commands module unload and module rm can both be used to unload modules (one or more module per command).

module unload fastqc/0.11.9

Unload a module.

Purge modules

The command module purge can be used to unload all loaded module and reset everything to the original state.

For instance:

module list
module load R-base/4.2.0
module list
module purge
module list

In particular:

  • The first call to module list reports a module that was loaded in the user’s ~/.bashrc file.
  • The command module purge unloads all modules; both those loaded in the user’s ~/.bashrc and those loaded interactively on the command line.

Purge modules.