Software on the clusters is organized into modules. Loading a module sets up everything a program needs, and unloading it takes it away again, so you can switch between packages and versions without clashes.

On this page: The basics ยท Find software ยท Modules in job scripts ยท Node types ยท Troubleshooting

The basics

module avail                   # everything you can load
module load python/3.11.2      # load a package (a specific version)
module list                    # what's loaded right now
module unload python/3.11.2    # remove one
module purge                   # remove everything and start clean

Tip: always name the version (python/3.11.2, not just python) so your results don't change when a newer default arrives.

Find software

module avail python            # search by name
module show python/3.11.2      # what a module sets up, and where it lives

You can also browse the software catalog, which has load instructions for each package. Can't find what you need? You can install it yourself or ask RCI to add it.

Modules in job scripts

Jobs don't inherit what you loaded at the prompt reliably, so load modules inside every job script:

#!/bin/bash
#SBATCH -p short-40core
#SBATCH --time=01:00:00

module purge                   # start clean
module load gcc/12.3.0
module load python/3.11.2

python my_script.py

If you compiled a program, load the same modules at run time that you used to build it.

Node types matter

SeaWulf has several kinds of compute nodes, and some software versions only exist for some of them:

  • 28-core Intel Haswell (reached from login1 and login2)
  • 40-core Intel Skylake
  • 96-core AMD EPYC Milan
  • 96-core Intel Sapphire Rapids (HBM)

If a module won't load or a program crashes, check that you're on the right login node for your target queue (see Which SeaWulf login node?) and that the version was built for that node type.

Troubleshooting

"Unable to locate a modulefile"

Check the exact name and version with module avail <name>. Some modules only appear on certain login nodes.

Two modules conflict

Run module purge and load only what you need, compilers first, then libraries, then applications.

Need new software or a different version? Submit a request at iacs.supportsystem.com.
Applies to All clusters