Using Software: Working with Modules

New users accessing the HPC might be surprised to find that very few programs appear to be available. We know that R is available on the HPC, so why does it does the HPC say "command not found" when we try to run it?
This is because the HPC uses a special system for handling software. The module utility makes it to where users have to select what programs (modules) they want to have available before they can run them.

The extra step of having to load your programs is worth it for two huge advantages:
1. Multiple versions of the same program. Returning to R as an example, some users need the default version, while others require a special version built with the Intel compiler.
2. Very easy to select which version you want to use. Instead of keeping track of which versions are stored where, you simply load the program you want and run it by name. The user using Intel R and the user with default will both execute the command "R".
Examples:
The following should be enough to load and use programs on the HPC.
Advanced options exist and can be found in the documentation at the bottom of this tutorial.

Get a list of all modules available in system

Code: module avail

Get help on a specific module

Code: module help [program]

Get a list of modules that you have already loaded for use

Code: module list

Load a module so that you can use it

Code: module load [program]

Or, load multiple modules at once

Code: module load [program1] [program2] [...etc]

Unload a module. You will have load it again to be able to use it

Code: module unload [program]

Or, unload several modules at once

Code: module unload [program1] [program2] [...etc]

Module Command Summary

Code

add|load           <program> [<program> ...]

rm|unload        <program> [<program> ...]

switch              <program1> <program2>

display             <program> [<program> ...]

avail                   path [path]

help                 <program> [<program> ...] 

Further reading:

The official Module manual page.
This document can also be accessed directly within the HPC using

Code: man module