Using modules on cyclone: Difference between revisions
No edit summary |
mNo edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== Using modules on cyclone== | == Using modules on cyclone== | ||
This page documents how to use Modulefiles on the Abel (HPC for UiO) and Colossus (HPC for TSD) clusters. Same procedure applies on cyclone. | This page documents how to use Modulefiles on the Abel (HPC for UiO) and Colossus (HPC for TSD) clusters. Same procedure applies on cyclone. For some specific documentation on available modules refer to [[Using cyclone]]. | ||
To simplify setting up environments for compilers, MPI-versions and some installed applications, the clusters have the [http://modules.sourceforge.net Environment Modules package] installed. This provides means for dynamic modification of a user's environment via modulefiles. | To simplify setting up environments for compilers, MPI-versions and some installed applications, the clusters have the [http://modules.sourceforge.net Environment Modules package] installed. This provides means for dynamic modification of a user's environment via modulefiles. | ||
Line 31: | Line 31: | ||
The available modulefiles can be listed by module avail. Example output: | The available modulefiles can be listed by module avail. Example output: | ||
<nowiki> | <nowiki> | ||
$ module avail | $ module avail | ||
------------------------ /usr/share/Modules/modulefiles ------------------------- | ------------------------ /usr/share/Modules/modulefiles ------------------------- | ||
Line 50: | Line 50: | ||
You can also specify a name: | You can also specify a name: | ||
<nowiki> | <nowiki> | ||
$ module avail blast | $ module avail blast | ||
--------------------------- /cluster/etc/modulefiles ---------------------------- | --------------------------- /cluster/etc/modulefiles ---------------------------- | ||
Line 58: | Line 58: | ||
You will get a list of current loaded modulefiles by | You will get a list of current loaded modulefiles by | ||
<nowiki> | <nowiki> | ||
$ module list | $ module list | ||
Currently Loaded Modulefiles: | Currently Loaded Modulefiles: | ||
Line 78: | Line 78: | ||
For further documentation, please refer to the [http://modules.sourceforge.net Environment Modules homepage] | For further documentation, please refer to the [http://modules.sourceforge.net Environment Modules homepage] | ||
Personalize default modulefiles | '''Personalize default modulefiles''' | ||
You may add loading of modulefiles to your . | You may add loading of modulefiles to your .bash_profile file to make sure your favorite modulefile is always loaded when logging in. For instance, to always have the intel modulefile load on login, add: | ||
<code> | <code> | ||
Line 86: | Line 86: | ||
</code> | </code> | ||
to the . | to the .bash_profile file. |
Latest revision as of 13:50, 29 September 2018
Using modules on cyclone
This page documents how to use Modulefiles on the Abel (HPC for UiO) and Colossus (HPC for TSD) clusters. Same procedure applies on cyclone. For some specific documentation on available modules refer to Using cyclone.
To simplify setting up environments for compilers, MPI-versions and some installed applications, the clusters have the Environment Modules package installed. This provides means for dynamic modification of a user's environment via modulefiles.
Each modulefile contains the information needed to configure the shell for an environment. Typically, a modulefile modifies environment variables like PATH, MANPATH, LD_LIBRARY_PATH, CPATH and PKG_CONFIG_PATH to give access to an application or library.
Modulefiles can be used from most shells, as well as Perl and Python. Modulefiles can be loaded/unloaded on the command line or within your scripts by typing:
module load modulefile
module unload modulefile
(On Colossus, the module commands can only be used in job scripts.) You can also ask for a specific version of a modulefile:
module load modulefile/version
For the purpose of reproducability, we encourage users to load specific versions of modulefiles. Also, we recommend using
module purge
prior to any module load commands in job scripts, to prevent inheriting environment variables set by module commands in the shell used when submitting the job.
The available modulefiles can be listed by module avail. Example output:
$ module avail ------------------------ /usr/share/Modules/modulefiles ------------------------- dot module-cvs module-info modules null use.own --------------------------- /cluster/etc/modulefiles ---------------------------- 454apps/2.8(default) mcmcphase/2.0(default) R/2.15.1(default) microbiomeutil/20110519(default) R/2.15.1.shlib migrate/3.3.2(default) abyss/1.3.4(default) mothur/1.26.0(default) adf/2010.02b(default) mrbayes/3.2.1(default) adf/2012.01b muscle/3.8.31(default) ampliconnoise/1.25(default) ncl/2.1.18(default) beagle/1.0(default) newbler/2.8(default) [...]
You can also specify a name:
$ module avail blast --------------------------- /cluster/etc/modulefiles ---------------------------- blast/2.2.26(default) blast+/2.2.26(default)
You will get a list of current loaded modulefiles by
$ module list Currently Loaded Modulefiles: 1) intel/2011.10 2) R/2.15.1
A help text exists for most of the modulefiles; to view it, type
module help modulefile
To view exactly what a modulefile is doing to your environment, type
module show modulefile
For further documentation, please refer to the Environment Modules homepage
Personalize default modulefiles
You may add loading of modulefiles to your .bash_profile file to make sure your favorite modulefile is always loaded when logging in. For instance, to always have the intel modulefile load on login, add:
module load intel
to the .bash_profile file.