Access to installed software using Environment Modules
Applications, software, compilers, tools, communications libraries and math libraries of the cluster system are being keep up-to-date. HPC2021 uses the Environment Modules to dynamically set up environments for different applications. Module commands set, change, or delete environment variables that are needed for a particular application. The ‘module load
‘ command will set PATH, LD_LIBRARY_PATH and other environment variables such that user may choose a desired version of applications or libraries more easily. More details can be found here.
Module manipulation commands
Command | Description |
---|---|
module avail or ml avail |
Show the available modules ready for loading |
module keyword [word1] [word2] |
Search for available modules matching the keyword(s) |
module spider word |
Show the details of any modules matching the keyword(s) |
module whatis [mod] or module help [mod] |
Show description of a module |
module load [mod] or ml [mod] |
Load the environment for the default version of the modulefile |
module load [modA] [modB] [modC] |
Load the environment for the default version of modules named modA, modB and modC in corresponding order |
module load [mod]/[version] |
Load the environment for the specified version of module |
module unload [mod] or module unload [modA] [modB] |
Roll back configuration performed by the modulefile(s) |
module swap [modA] [modB] |
Unload modulefile A and load modulefile B |
module list or ml |
List any currently loaded module(s) |
module purge |
Unload all modules currently loaded |
Module interoperability and dependency
When one module is in conflict with another (e.g different MPI libraries), the conflicting module may have to be unloaded before a desired one is loaded. Besides, some modules may depend on one another and hence they may be loaded/unloaded as a consequence of a subsequent module command in a dynamic fashion.
To achieve automatic loading of a set of commonly used modules upon system login, user may add the module command in the shell profile (.bashrc for bash users, .cshrc for C shell users).
When caching error occurs while listing/loading modules, a user may delete the cache file and run the module command again.
/usr/bin/lua: /home/[user]/.lmod.d/.cache/moduleT.x86_64_Linux.lua:function expression ...
$ rm -f /home/[user]/.lmod.d/.cache/*.lua