Oh, also, we use an environment variable (RSNT_ARCH) to distinguish
between multiple CPU architectures. We currently have 3 "branches",
SSE3, AVX and AVX2. The MNS is aware of that, and EasyBuild will install
software in different paths based on the architecture because of this.
Maxime
On 17-10-06 10:49, Maxime Boissonneault wrote:
Not claiming which one is best, but Compute Canada uses this custom
module naming scheme :
https://github.com/ComputeCanada/easybuild-framework/blob/computecanada-master/easybuild/tools/module_naming_scheme/SoftCCHierarchicalMNS.py
It is a hierarchical naming scheme with modules in lower case and no
version-suffix (if we need flavours, we use flavour-in-name with
"modaltsoftname" rather than flavour-in-version).
The arguments for these choices were :
1) We don't want users to have to remember weird capitalization of
module names
2) flavour-in-version messes up with Lmod's smart ordering of version
numbers
The downside of flavour-in-name is that you don't get automatic
conflict between two different flavours. We use Lmod's "family"
feature for that.
Maxime
On 17-10-06 03:13, Erik Smeets wrote:
Hello,
Currently we are looking into switching to lmod as modules tool. Up
till now we have been using our own module naming scheme when
installing software with EasyBuild. This however seems to be not
ideal in combination with lmod. One of the features we would like to
use is easy switching between toolchains. What would you recommend as
best module structure and module naming scheme in EasyBuild in
combination with lmod?
Thanks in advance for sharing your ideas on this.
Kind regards,
Erik
--
---------------------------------
Maxime Boissonneault
Analyste de calcul - Calcul Québec, Université Laval
Président - Comité de coordination du soutien à la recherche de Calcul Québec
Team lead - Research Support National Team, Compute Canada
Instructeur Software Carpentry
Ph. D. en physique