UC San Diego SearchMenu

Modules Environment Management on TSCC

Managing Your Shell Environment

TSCC uses the Environment Modules package to control user environment settings. Below is a brief discussion of its common usage. You can learn more at the Modules home page.

Overview

The Environment Modules package provides for dynamic modification of a shell environment. Module commands set, change, or delete environment variables, typically in support of a particular application. They also let the user choose between different versions of the same software or different combinations of related codes.

For example, if the pgi module and openmpi_ib module are loaded and the user compiles with mpif90, the generated code is compiled with the Portland Group Fortran 90 compiler and MPI libraries utilizing openmpi are linked. By unloading the openmpi_ib module, loading the mvapich2_ib module, and compiling with mpif90, the Portland compiler is used but linked with mvapich2 support.

Default Modules on TSCC

Several modules that determine the default TSCC environment are loaded at login time. These include the intel and openmpi_ib modules to set the default compiler environment.

Useful Modules Commands

Here are some common module commands and their descriptions:

  • module list - List the modules that are currently loaded
  • module avail - List the modules that are available (See below for results of this command)
  • module display <module_name> - Show the environment variables used by<module name> and how they are affected
  • module unload <module name> - Remove <module name> from the environment
  • module load <module name> - Load <module name> into the environment
  • module switch <module 1 name> <module 2 name> - Replace <module 1 name> with <module 2 name> in the enviornment

Note that the order in which modules are loaded is significant. For example, if the pgi module is loaded and subsequently the intel module is loaded, the intel compiler will be used. Also, some modules depend on others so may be loaded or unloaded as a consequence of another module command. For example, if intel and mvapich2_ib modules are both loaded, running the command unload intel will automatically unload mvapich2_ib. Subsequently issuing the load intel command will not automatically reload mvapich2_ib.

Complete documentation is available in the module(1) and modulefile(4) manpages.

Available Modules

The following modules are available on TSCC.

Modules located in /opt/modulefiles/...
mpi/.pgi
  • mvapich2_ib/1.9a2(default)
  • openmpi_ib/1.6.3(default)
applications/.pgi
  • fftw/2.1.5
  • fftw/3.3.3(default)
  • gsl/1.15(default)
  • hdf4/2.8(default)
  • hdf5/1.8.10(default)
  • lapack/3.4.2(default)
  • netcdf/3.6.2
  • netcdf/4.2.1.1(default)
  • parmetis/4.0.2(default)
  • scalapack/2.0.2(default)
  • sprng/2.0b(default)
  • sundials/2.5.0(default)
  • superlu/3.2(default)
  • trilinos/11.0.3(default)
applications
  • abyss/1.3.4(default)
  • amber/12(default)
  • bbcp/12.08.17(default)
  • bbftp/3.2.0(default)
  • beast/1.7.4(default)
  • bioroll/6.1(default)
  • biotools/1(default)
  • cpmd/3.15.3(default)
  • ddt/3.2(default)
  • fsa/1.15.7(default)
  • gamess/5.2012(default)
  • gaussian/09.C.01(default)
  • idl/8.2.r1(default)
  • jags/3.3.0(default)
  • matlab/2012a(default)
  • nwchem/6.1.1(default)
  • octave/3.6.2(default)
  • R/2.15.2(default)
  • rapidminer/5.2.008(default)
  • scipy/1(default)
  • siesta/3.1(default)
  • tecplot/2012(default)
  • vasp/4.6
  • vasp/5.3.3(default)
  • weka/3.7.7(default)
compilers
  • cilk/5.4.6(default)
  • cmake/2.8.10.2(default)
  • gnu/4.4.6(default)
  • intel/2013.1.117(default)
  • mono/3.0.2(default)
  • pgi/13.2(default)
  • upc/2.16.0(default)
Modules located in /usr/share/Modules/...
modulefiles
  • dot
  • module-cvs
  • module-info
  • modules
  • null
  • rocks-openmpi
  • rocks-openmpi_ib
  • use.own
Modules located in /etc/...
modulefiles
  • openmpi-x86_64