Module environment – Cray

Introduction

By default, all users on CRAY XC40 start with the Cray programming environment loaded (PrgEnv-cray) and the MPI (cray-mpich) and Cray LibSci (cray-libsci includes BLAS, LAPACK and ScaLAPACK) libraries included in their environment.

Examples

  • module list
//Show list of already loaded modules
  • module avail
//Show list of available dynamically loadable modules
  • module show [module name]
//this shows the environment paths for given module
  • module load [module name]
//to load a specified module to current environment
  • module unload [module name]
//to unload a specified module to current environment
  • module help [module name]
//to help about required module
  • module swap PrgEnv-cray PrgEnv-intel
//By default the Cray programming environment is loaded. If you want to change this and load Intel programming environment you will need to unload the Cray programming environment module and then load the Intel programming environment module. This can be achieved by swapping. In this example, swap Prg-Env-cray (default) with that of Intel programming environment module.

For running CPU based jobs load the following module


  • module load craype-haswell
//compiling for CPU nodes

For running accelerator based jobs (GPU/Phi) load the following modules

  • module load craype-ivybridge
//compiling for GPU&Phi nodes(offload mode)
  • module load craype-accel-nvidia35
//compiling for GPU nodes
  • module load craype-mic-knl
//compiling for Phi nodes(native mode)

For running GPU based jobs load the following modules


  • module swap PrgEnv-cray PrgEnv-gnu
//swap environment from cray to gnu

  • module load craype-ivybridge
//load processor module

  • module load craype-accel-nvidia35
//load accelerator nvidia

Note:

If you want to switch from one processor type to another, first unload the already loaded processor module then load the needed processor module.