Child pages
  • Environment modules cheat sheet

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Environment modules are used on HPC to allow JCU HPC uses environment modules to deliver multiple versions of any given piece of software to sit on the same OS, giving you the ability to choose a version of software.  When viewed from an individual user point of view this may seem complex, however it is necessary in a multi-user HPC cluster.

...

This page house a "cheat sheet" style glance at some environment .

Note:  It is possible to have two or more versions of the same module loaded, but this can cause problems and should be avoided.  The reason for this is often that a major version change in software can result in significantly different syntax, so software developers maintain multiple, independent streams of their software.  All aliases defined above can be considered examples of this.

...

width25%

modules functionality.  You will need to replace any occurrence of <software-name> and/or <version> below with an appropriate name/value.

To list all available software

No Format
module avail

To list all versions of a given piece of software

No Format
module avail
Information about a
 <software-name>

To display a brief summary for a given piece of software

...

No Format
module help 
grassListing
<software-name>

To list environment modules

...

that have already loaded

...

Loading a specific software version (example)
No Format
module list

Unloading all modules

There will be occasions where it is easier to make a fresh start, in which case you simply run the command

No Format
module purge
Column
width45%

To load the default version of a piece of software

No Format
module load 
gcc/6Loading the
<software-name>

The default version of a piece of software

...

will usually be a safe (rather than latest) version.

To load a specific version of a piece of software

No Format
module load 
java

NOTE:  The default software version will generally be the safest (e.g., version distributed by RedHat).

An example of a command to
<software-name>/<software-version>

HPC staff recommend this approach as default versions may change with time.

To switch to another version of the same piece of software

...

No Format
module switch 
java/1.6.0-openjdkUnloading a module (example)
<software-name>/<software-version>

To list changes that would be (or have been) made to your environment from loading a specific module

No Format
module show <software-name>/<software-version>

To unload

...

In some cases, you may want/need to add the version.

...

a module you have loaded

No Format
module unload <software-name>

Specification of a version shouldn't be required here.

To unload all of your currently loaded module

No Format
module purge


Information specific to JCU HPC configuration

...

The most common environment variable modified by the loading of an environment variable is PATH.

Some other commonly modified environment variables are: MANPATHLD_LIBRARY_PATHCLFAGSCXXFLAGS, and LDFLAGS.

Environment modules are not usually created for Python extensions.  Loading a specific python version will usually enable use of all extensions.  Note that some extensions may not be available for all versions of python.

Software that includes perl extensions will usually modify the PERLLIB and/or PERL5LIB environment variables.

For Java based software, there will often be an alias set that simplifies things for users.  For example a

No Format
module load picard

will create a picard alias that expands to java -jar $PICARD_HOME/picard.jar

  This has been done for convenience.