System Module Environment Setup
PREREQUISITES
Admin permissions and the system’s CPE Installation Guide.
Note: The installation guide should be followed, the steps here are a collected summary to give the reader an overview of module environment setup on a system.
OBJECTIVE
This section provides a collected summary of how to setup a module environment for a system. These instructions can be found within the Install HPE Cray Programming Environment section, of a system’s installation guide.
PROCEDURE
- The following configuration files are used to customize the current environment module program behavior. Both of these configuration files maybe referred to as “cray-pe-configuration files” for brevity.
/opt/clmgr/image/images/<IMAGE_NAME>/etc/cray-pe.d/etc/cray-pe.d/cray-pe-configuration.sh
/opt/clmgr/image/images/<IMAGE_NAME>/etc/cray-pe.d/etc/cray-pe.d/cray-pe-configuration.csh
Select environment module program for a system.
Within the Install HPE Cray Programming Environment section, of a system’s installation guide, are details for selecting the environment module program. The environment module programs are mutually exclusive and cannot both run on the same system. The default environment module program is preset to TCL Modules. To select Lmod as the environment module program for the system in the image, an admin needs to modify the cray-pe-configuration files as follows:
Example:
changeset module_prog = environment modules
toset module_prog = lmod
Customize default module paths and default modules loaded at login
In the cray-pe-configuration files the following can be configured to customize the default paths and modules loaded at login time.
Set additional module paths to use as default: Add additional paths as strings to the
mpaths
variable.Example:
mpaths="</system/modulefiles>"
Set the default list of modules to be loaded on login: Add desired module names to the
init_module_list
variable. Items added can be space or colon separated.Example:
init_module_list="
$cpe_arch
craype-network-ofi
perftools-base
xpmem
PrgEnv-$default_prgenv
"
Set the default programming environment and customize the modules loaded by programming environments
In the cray-pe-configuration files the following can be configured to customize programming environments.
Set the default programming environment:
Cray is the default programming environment. This results in the module
PrgEnv-cray
loading as part of the default module set. The default programming environment can be change by modifing the value ofdefault_prgenv
to a different programming environment.Example:
default_prgenv="cray"
Set the default list of modules that the programming environment modules (PrgEnv) will load:
Items added can be space or colon separated.
Note: The following modules should not be added to the programming environment modules list: cpe-$env, craype, and compiler modules since these are already added by the PrgEnv module itself.
Example:
prgenv_module_list="cray-dsmml cray-mpich cray-libsci"
Automated module script
In the installation guide there are instructions directing the admin to initiate a reboot of node/s. After a node is rebooted and a PE is mounted a script in
/etc/cray-pe.d/gen_modulefiles.sh
is kicked off to generate third party modules automatically. For more details on third party modules generation see Create Module-files for third-party products.
Ensure that the default set of module-files is loaded.
This step should be completed when verifying the CPE installation.
Example:
admin# ssh nid0001
nid0001# module list
Currently Loaded Modules:
1) craype-x86-rome 5) cce/17.0.0 9) cray-libsci/23.12.5
2) libfabric/1.15.2.0 6) craype/2.7.30 10) PrgEnv-cray/8.5.0
3) craype-network-ofi 7) cray-dsmml/0.2.2
4) perftools-base/23.12.0 8) cray-mpich/8.1.28
Note: See the HPE HPCM release announcement for current CPE release product versions.