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

Reply via email to