Modules are used to set paths and variables for software applications and compiler.
  • Loading a module adds necessary paths to the $PATH and $LD_LIBRARY_PATH variables for a specific version of an application.  Variables such as license files, and temporary scratch space may also be set.
  • Unloading a module removes the paths and unsets the variables.
  • The default module for the application will be used if the version is omitted.
  • CCR use the Lua-based Lmod environmental modules system.
  • See here for an introductory article and tutorial on Lmod written by Jeff Layton for ADMIN Magazine.



Usage Notes:

List all software modules:
    module spider
        OR
    module avail

List available modules for a specific software suite (e.g. intel-mpi):
   module avail module_name
        OR
   module spider module_name

List currently loaded modules:
    module list

Load a module:
    module load module_name
    module load module_name/version

Show what the module will set:
    module show module_name/version

Show description of the application:

    module help module_name/version

Unload a module:
    module unload module_name
    module unload module_name/version



Example of Using a Module:


$ module list
Currently Loaded Modules:
  1) lmod/5.8   2) StdEnv

$ module avail matlab
----------- /util/Lmod/modulefiles/Core ---------------
   matlab/R2014b

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible modules ...

$ module spider namd
----------------------------------------
namd:
----------------------------------------
     Versions:
        namd/2.8-MPI-CUDA
        namd/2.9-IBVERBS-SRC
        namd/2.9-IBVERBS
        namd/2.9-MPI-CUDA
        namd/2.9-MPI
        namd/2.10b1-IBVERBS-smp
        namd/2.10b1-IBVERBS

----------------------------------------
  To find detailed information about namd please enter the full name.
  For example:

     $ module spider namd/2.9-MPI-CUDA
----------------------------------------