Modules

From OPS
Jump to: navigation, search

Contents

What are Environment Modules (EMs)

Red Hat Enterprise Linux is the operating system on the cluster computers. The cluster uses a system called "Environment Modules" to manage environment variables. Modules ensure that your environment variables are set up for the software you want to use. To use a particular software package, you have to load the relevant module. Some info about Modules can be found in the wikipedia page : https://en.wikipedia.org/wiki/Environment_Modules_(software).

Bashrc code needed

If you are getting errors about module command not being found, add the code below to your ~/.bashrc file, then log out and back in.

# Source global definitions
if [ -f /etc/bashrc ]; then
   . /etc/bashrc
fi

Initializing and Loading Modules

There are some standard softwares and libraries that are already installed for all user in the cluster. User can see which of these are currently available (Note. Some modules may be removed and/or updated, it is important that you always check to make sure the software/library you want to use is available) by using the following command:

module avail

This will show:

-----------------------------/cresis/snfs1/sw/Modules/APPLICATIONS---------------------------
..........
.some package_1
.some package_2
.use.own
...........
----------------------------/cresis/snfs1/sw/Modules/DEVELOPMENT--------------------------
............
.some more packages
............

The use.own is a special module, it enables the user to load their own modules for softwares they have installed locally inside their home directory. For more information about how to install softwares and create modules for them please see the wiki page:Installing User Packages.

Users can load a specific module from the list of available modules by invoking:

module load module_name

You must load the respective module for the software or a library before using it inside your application. You can load modules inside your qsub script by using the above command. You can check which modules are currently loaded by:

module list

To get information about a particular module (such as the collection of environment variables that are set by that module) you can use:

module show module_name

You can unload a module by:

module unload module_name

To find more options type in:

module --help

You may also get more information about a particular module by invoking:

module whatis module_name

Note. Whatever modules you need to run your application must also be loaded from you qsub script which you submit to the grid engine in order to run the said application.

Reference

  1. Linux manpage: http://linux.die.net/man/1/module
Personal tools
Namespaces

Variants
Actions
Navigation
Tools