- Software Stack
This is an old revision of the document!
The Environment Modules package provides for the dynamic modification of a user's environment via modulefiles.
Each modulefile contains the information needed to configure the shell for an application. Once the Modules package is initialized, the environment can be modified on a per-module basis using the module command which interprets modulefiles. Typically modulefiles instruct the module command to alter or set shell environment variables such as PATH, MANPATH, etc. modulefiles may be shared by many users on a system and users may have their own collection to supplement or replace the shared modulefiles.
Modules can be loaded and unloaded dynamically and atomically, in an clean fashion. Modules are useful in managing different versions of applications. Modules can also be bundled into metamodules that will load an entire suite of different applications.
Basically, module command is provided on the supported clusters. This command supports different options and subcommands that specify what to be done. The more important ones are the following ones:
# To load a module module load modulefile [modulefile ...] # To unload a module module unload modulefile [modulefile ...] # To show currently loaded modules module list # To unload all the currently loaded modules module purge # To show available modules # Note that several versions are provided for some of the modules, like gcc. module avail
if you want to load some modules automatically when login in a cluster, you can add the following to your .bashrc script:
module load gcc/5.3.0 mpich/3.2