StdEnv/2023: FLEXIBLAS64 and RSNT_LOAD_DEFAULT_TOOLCHAIN#101
StdEnv/2023: FLEXIBLAS64 and RSNT_LOAD_DEFAULT_TOOLCHAIN#101bartoldeman wants to merge 1 commit intomainfrom
Conversation
Sites can set RSNT_LOAD_DEFAULT_TOOLCHAIN=no to avoid loading a compiler, MPI, and linear algebra module by default. Also set FLEXIBLAS64 to use the correct backend for libflexiblas64: we need FLEXIBLAS set even without the flexiblas module loaded because of RPATH'ed module binaries and Python wheels.
| end | ||
|
|
||
| local load_default_toolchain = os.getenv("RSNT_LOAD_DEFAULT_TOOLCHAIN") or "yes" | ||
| if load_default_toolchain == "yes" then |
There was a problem hiding this comment.
Mmm, I don't like changing the behaviour of loading StdEnv/2023 based on an environment variable. Loading StdEnv/2023 should produce the same result (semantically, meaning it could load a different BLAS library, but it should still load one, and a compiler, and MPI, regardless) anywhere, IMO.
There was a problem hiding this comment.
Instead of changing the behaviour of loading StdEnv/2023, we should add what's missing in the gentoo/2023 environment, or in the flexiblas module.
There was a problem hiding this comment.
My goal with this change is to sync what module spider says on Trillium and what is actually loaded:
1) gentoo/2023 (S) 2) mii/1.1.2 3) CCconfig
Right now they are out of sync. E.g. if I do module spider openmpi/4.1.5 it tells me to load StdEnv/2023 gcc/12.3 when in reality it only needs gcc/12.3 (that spider output is the same on other clusters by the way even if gcc/12.3 is already loaded). So as module spider doesn't assume that StdEnv/2023 contains a full toolchain, we may as well load it without the toolchain for clarity on Trillium.
The alternative I had in mind first was to try to convince module spider to not display StdEnv/2023. That would mean a custom spider cache though!
There was a problem hiding this comment.
That's because we made the choice to show StdEnv/2023 instead of gentoo/2023, because there is value in loading StdEnv/2023:
https://github.com/ComputeCanada/software-stack-custom/blob/diskusage_report_python/modules/gentoo/2023.lua.core#L86
Is it that problematic that users see StdEnv/2023 in module spider on Trillium ? Loading StdEnv/2023 is what is going to give them the same environment as on other clusters.
Sites can set RSNT_LOAD_DEFAULT_TOOLCHAIN=no to avoid loading a compiler, MPI, and linear algebra module by default.
Also set FLEXIBLAS64 to use the correct backend for libflexiblas64: we need FLEXIBLAS set even without the flexiblas module loaded because of RPATH'ed module binaries and Python wheels.