There are many software applications on our systems for which multiple versions have been installed. This is generally done because some users need an older version for compatibility, while others may want to use features only present in a newer version. The module system allows users to easily select which specific version of a software package they want to use. Modules also enable you to use specific compilers or link-specific library versions when installing your own software applications.
A more detailed introduction to using modules and the module environment can be found on this tutorial page.
The environment module system on Snellius Lmod
To see which modules are available, use
module avail
or to find all possible modules and extensions
module spider
To load a module, use
module load [module_name]
module load 2022
For example, you can load Python by using the following command
module load 2022 module load Python/3.10.4-GCCcore-11.3.0
Default modules are disabled on Snellius. You need to specify the full version of the module you want to load (e.g: Python/3.10.4-GCCcore-11.3.0)
In order to minimize bugs in job scripts and have more consistent behaviour, users should load the exact version of the software via the module.
To check which versions of python are available, you can use
module avail Python
which will show something like
Python/2.7.18-GCCcore-10.3.0-bare Python/3.9.5-GCCcore-10.3.0 Python/3.9.5-GCCcore-10.3.0-bare
The module avail
command will match all parts of the complete module+version string. So, for example:
module avail GCC
will also match
pkgconfig/1.5.5-GCCcore-11.3.0-python