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
