User Tools

Site Tools


wiki:prototype:envmodules

Environment Modules

General Information

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.

Usage

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 charge the module software
source /etc/profile.d/modules.sh
 
# 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

Loading modules at login

if you want to load some modules automatically when login in a cluster, you can add the following to your .bashrc script:

source /etc/profile.d/modules.sh
module load gcc/5.3.0 mpich/3.2
wiki/prototype/envmodules.txt · Last modified: 2019/07/08 10:38 by kpeiro