Status command : add module commands for each microarch
The status command now shows:
❯ ./mpsd-software-environment.py status dev-23a
Toolchains installed in the mpsd_release='dev-23a' for each Microarchitecture:
- zen3:
['foss2022a-mpi', 'foss2021a-cuda-mpi', 'foss2022a-cuda-mpi', 'foss2021a-serial', 'foss2021a-mpi', 'foss2022a-serial']
To load toolchains for microarch='zen3' use commands :
module use /home/karnada/Sandbox/Projects/mpsd-software-environments/dev-23a/zen3/lmod/Core
module load <toolchain_name>
Merge request reports
Activity
requested review from @hans.fangohr
Made some suggestions as a commit.
Looks good to me.
One thing: can you check that toolchains like 'generic' are picked up correctly? I have this scenario:
global_generic
is installed, but status doesn't show it:(venv) fangohr@avocado:~/git/mpsd-software-environments$ ./mpsd-software-environment.py status dev-23a Installed toolchains (dev-23a): - cascadelake foss2022a-mpi foss2022a-serial [module use /home/fangohr/git/mpsd-software-environments/dev-23a/cascadelake/lmod/Core] (venv) fangohr@avocado:~/git/mpsd-software-environments$ ls -l dev-23a/cascadelake/lmod/Core/ total 0 drwxr-xr-x 2 fangohr cfel 25 Jun 9 17:01 anaconda3 drwxr-xr-x 2 fangohr cfel 24 Jun 6 12:53 gcc drwxr-xr-x 2 fangohr cfel 59 Jun 6 16:20 toolchains
Or at least I think it is installed (and provides
anaconda3
).Since globalgeneric is just a list of package, they don't come up as a toolchain. I.e spack has no idea what globalgeneric is, it's just a file that our spackenvironments repo uses to read packages from. We could list individual packages like anaconda and octopus but i guess it wouldn't look pretty
For entertainment some (outdated and partly broken due to my experimentation) output from running the 'status' command on the HPC:
fangohr@mpsd-hpc-login1:/opt_mpsd/linux-debian11$ python3 ~/mpsd-se.py status dev-23a Toolchains installed in the mpsd_release='dev-23a' for each Microarchitecture: - broadwell: ['foss2022a-cuda-mpi', 'foss2021a-serial', 'foss2022a-mpi', 'foss2021a-cuda-mpi', 'foss2021a-mpi', 'foss2022a-serial'] To load toolchains for microarch='broadwell' use commands : module use /opt_mpsd/linux-debian11/dev-23a/broadwell/lmod/Core module load toolchains/<toolchain_name> - .sandy_bkp: ['foss2021a-mpi', 'foss2021a-cuda-mpi', 'foss2022a-serial', 'foss2021a-serial', 'foss2022a-cuda-mpi', 'foss2022a-mpi'] To load toolchains for microarch='.sandy_bkp' use commands : module use /opt_mpsd/linux-debian11/dev-23a/.sandy_bkp/lmod/Core module load toolchains/<toolchain_name> - skylake_avx512: ['foss2022a-serial', 'foss2021a-mpi', 'foss2021a-cuda-mpi', 'foss2022a-mpi', 'foss2022a-cuda-mpi', 'foss2021a-serial'] To load toolchains for microarch='skylake_avx512' use commands : module use /opt_mpsd/linux-debian11/dev-23a/skylake_avx512/lmod/Core module load toolchains/<toolchain_name> - cascadelake: ['foss2021a-mpi', 'foss2022a-cuda-mpi', 'foss2021a-serial', 'foss2022a-serial', 'foss2022a-mpi', 'foss2021a-cuda-mpi'] To load toolchains for microarch='cascadelake' use commands : module use /opt_mpsd/linux-debian11/dev-23a/cascadelake/lmod/Core module load toolchains/<toolchain_name> - .skylake_avx512_bkp: ['foss2021a-serial', 'foss2021a-mpi', 'foss2022a-cuda-mpi', 'foss2022a-mpi', 'foss2022a-serial', 'foss2021a-cuda-mpi'] To load toolchains for microarch='.skylake_avx512_bkp' use commands : module use /opt_mpsd/linux-debian11/dev-23a/.skylake_avx512_bkp/lmod/Core module load toolchains/<toolchain_name> - examples: [] To load toolchains for microarch='examples' use commands : module use /opt_mpsd/linux-debian11/dev-23a/examples/lmod/Core module load toolchains/<toolchain_name> - .skylake_avx512: ['foss2021a-cuda-mpi', 'foss2022a-cuda-mpi'] To load toolchains for microarch='.skylake_avx512' use commands : module use /opt_mpsd/linux-debian11/dev-23a/.skylake_avx512/lmod/Core module load toolchains/<toolchain_name> - sandybridge: ['foss2022a-serial', 'foss2022a-cuda-mpi', 'foss2022a-mpi', 'foss2021a-mpi', 'foss2021a-cuda-mpi', 'foss2021a-serial'] To load toolchains for microarch='sandybridge' use commands : module use /opt_mpsd/linux-debian11/dev-23a/sandybridge/lmod/Core module load toolchains/<toolchain_name>
mentioned in commit ec0f4813