Environment and Modules¶
After logging in, you may want to configure the environment. Write your preferred path definitions, aliases, functions and module loads in the .bashrc file
$ cat ./bashrc # ./bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific aliases and functions alias qs='qstat -a' module load PrgEnv-gnu # Display information to standard output - only in interactive ssh session if [ -n "$SSH_TTY" ] then module list # Display loaded modules fi
Do not run commands outputting to standard output (echo, module list, etc) in .bashrc for non-interactive SSH sessions. It breaks fundamental functionality (scp, PBS) of your account! Conside utilization of SSH session interactivity for such commands as stated in the previous example.
In order to configure your shell for running particular application on Anselm we use Module package interface.
The modules set up the application paths, library paths and environment variables for running particular application.
We have also second modules repository. This modules repository is created using tool called EasyBuild. On Salomon cluster, all modules will be build by this tool. If you want to use software from this modules repository, please follow instructions in section Application Modules Path Expansion.
The modules may be loaded, unloaded and switched, according to momentary needs.
To check available modules use
$ module avail **or** ml av
To load a module, for example the octave module use
$ module load octave **or** ml octave
loading the octave module will set up paths and environment variables of your active shell such that you are ready to run the octave software
To check loaded modules use
$ module list **or** ml
To unload a module, for example the octave module use
$ module unload octave **or** ml -octave
Learn more on modules by reading the module man page
$ man module
Following modules set up the development environment
PrgEnv-gnu sets up the GNU development environment in conjunction with the bullx MPI library
PrgEnv-intel sets up the INTEL development environment in conjunction with the Intel MPI library
Application Modules Path Expansion¶
All application modules on Salomon cluster (and further) will be build using tool called EasyBuild. In case that you want to use some applications that are build by EasyBuild already, you have to modify your MODULEPATH environment variable.
This command expands your searched paths to modules. You can also add this command to the .bashrc file to expand paths permanently. After this command, you can use same commands to list/add/remove modules as is described above.