Skip to main content

Available Software

Supercomputing software environments are highly domain-dependent. To prevent conflicts while balancing ease-of-use, the software that your research needs will likely need to be loaded into the environment as a software module.

By default, no software modules are loaded, ensuring a clean session.

tip

Avoid putting software module loads in your shell init scripts, so that job submissions and interactive shells behave the same and can be highly-reproducible.

Installing Software as Modules

If the software you need is not installed as a module yet, please see the building software page.

Loading Modules

Listing All Available Software Modules

The following command will list all available software modules.

$ module avail

Listing All Versions of a given Software

To search available modules with a keyword, i.e. “rust”:

$ module avail rust

You can also see available modules from the web portal.

ℹ️ Research Computing uses two methods to create modules, which is reflected in two different naming schemes: modules that are built manually follow the naming scheme software/version.number whereas modules that are built automatically follow the naming scheme software-version.number-compiler-version.number. Despite the naming difference, the usage of the applications/libraries remain the same once loaded.

Loading a Software Module

To use software, you must first load the module into your shell environment using the module load command:

module load aspect/2.3.0 
tip

You can use ml as a shorthand for module load.

Listing Loaded Modules

To see a list of modules that are currently loaded in this shell:

module list

Unloading Modules

By Module Name

To unload only a single module:

module unload aspect/2.3.0

Unloading All Modules

To unload all modules that are currently loaded:

module purge
tip

Module purge is useful for starting over with a clean environment, like when incorporating modules into an sbatch job script.

Example

$ module avail aspect
------------------------------ /packages/modulefiles/apps ------------------------------
aspect/2.3.0 aspect/2.3.0-debug aspect/2.4.0 aspect/2.4.0-debug aspect/2.5.0-pre

----------------------------- /packages/modulefiles/spack ------------------------------
aspect-2.3.0-gcc-11.2.0
$ module load aspect/2.3.0
$ module list
Currently Loaded Modulefiles:
1) dealii-9.3.3-gcc-11.2.0 2) openmpi-4.1.3-gcc-11.2.0 3) aspect/2.3.0
$ module purge
$ module list
No Modulefiles Currently Loaded.