This document provides a short description of proposed solution. For a more detailed analysis look >>HERE<<
1. Loading libraries/tools not depending on IMAS/DD
1.1. Module wpcdenv
Module wpcdenv
wpcdenv/<compiler_vendor>/<compiler_version>/<version of this module> e.g. wpcdenv[/intel/17.0/1.0] <= part in brackets can be skipped to use defaults
Module will load:
- Compiler
(e.g. intel/17.0
) - All components independent from IMAS/Data Dictionary, gathered together as a set of modules. Such set of modules will have its own version (e.g.
1.0
)
2. Loading libraries/tools depending on IMAS/DD
2.1. Module imasenv
Module imasenv
imasenv/<imas_ver>/ual/<engine_ver>/<version of this module> e.g. imasenv[/3.19.1/ual/3.8.2/1.0] <= part in brackets can be skipped to use defaults
Module will load:
- imas module
(e.g.
imasenv[/3.19.1/ual/3.8.2 ) - All components dependent on IMAS/Data Dictionary (group D), gathered together as a set of modules. Such set of modules will have its own version (e.g.
1.0
)
Presented solution:
Easy to use by users (to use default versions is enough to write
module load wpcdenv
;module load imasenv)
Flexible: Full names can be specified to use non-default versions of library sets
Using default versions
The end ("tail") of module name can be skipped to use default versions, so:
module load wpcdenv/intel/17.0/1.0
is equal tomodule load wpcdenv/intel/17.0 (assuming 1.0 as default version of set of libs)
module load wpcdenv/intel (assuming
intel/17.0/ as default version of compiler)
module load wpcdenv (assuming intel as default compiler)
module load imasenv/3.19.1/ual/3.8.2/1.0
is equal to- module load
imasenv/3.19.1/ual/3.8.2
(assuming 1.0 as default version of set of IMAS libs) - module load
imasenv/3.19.1
(assuming 3.8.2 as default version of UAL) - module load
imasenv
(assuming 3.19.1 as default version of Data Dictionary)
- module load