Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cannot load the gnu compiling environment using spack-stack 1.6.0 on jet #1505

Open
guoqing-noaa opened this issue Feb 10, 2025 · 11 comments
Open
Assignees
Labels
bug Something is not working OAR-EPIC NOAA Oceanic and Atmospheric Research and Earth Prediction Innovation Center

Comments

@guoqing-noaa
Copy link

Describe the bug

cannot load the gnu compiling environment using spack-stack 1.6.0 on jet. The error information is as follows:

[Jet|fe3 rrfs]$ module load stack-openmpi/3.1.4
Lmod has detected the following error:  The following module(s) are unknown: "openmpi/3.1.4"

Please check the spelling or version number. Also try "module spider ..."
It is also possible your cache file is out-of-date; it may help to try:
  $ module --ignore_cache load "openmpi/3.1.4"

Also make sure that all modulefiles written in TCL start with the string #%Module

Executing this command requires loading "openmpi/3.1.4" which failed while processing the following module(s):

    Module fullname      Module Filename
    ---------------      ---------------
    stack-openmpi/3.1.4  /misc/contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/gcc/9.2.0/stack-openmpi/3.1.4.lua
While processing the following module(s):
    Module fullname      Module Filename
    ---------------      ---------------
    stack-openmpi/3.1.4  /misc/contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/gcc/9.2.0/stack-openmpi/3.1.4.lua

To Reproduce
On Jet:

module use /contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core
module load stack-gcc/9.2.0
module load stack-openmpi/3.1.4

Expected behavior
The gnu compiling environment can be successfully loaded.

System:
Jet

@guoqing-noaa guoqing-noaa added the bug Something is not working label Feb 10, 2025
@climbfuji climbfuji added the OAR-EPIC NOAA Oceanic and Atmospheric Research and Earth Prediction Innovation Center label Feb 10, 2025
@rickgrubin-noaa
Copy link
Collaborator

@guoqing-noaa when is the last time -- prior to this attempt -- that you tried to use / load the stack and modules in question?

@guoqing-noaa
Copy link
Author

@rickgrubin-noaa I never loaded the GNU version before.
But now we want to use the GNU version as we found that GNU-compiled JEDI uses less memory than the INTEL-compiled JEDI and requests less nodes.

@rickgrubin-noaa
Copy link
Collaborator

The module stack-openmpi/3.1.4 depends on a system module that is not present (openmpi/3.1.4), as noted in the error message.

We'll investigate with RDHPCS.

@guoqing-noaa
Copy link
Author

Thanks, @rickgrubin-noaa !

@RatkoVasic-NOAA
Copy link
Collaborator

RatkoVasic-NOAA commented Feb 11, 2025

@guoqing-noaa can you please check if it works now:

[role.epic@Jet:~]$ module use /contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core
[role.epic@Jet:~]$ module load stack-gcc/9.2.0
[role.epic@Jet:~]$ module load stack-openmpi/3.1.4
[role.epic@Jet:~]$ module list
Currently Loaded Modules:
  1) stack-gcc/9.2.0   2) gnu/9.2.0   3) openmpi/3.1.4   4) stack-openmpi/3.1.4

Jet admins changed permission for openmpi/3.1.4 modulefile, and now it is accessible again.

@guoqing-noaa
Copy link
Author

guoqing-noaa commented Feb 11, 2025

@RatkoVasic-NOAA
Thanks a lot for your quick action on this. stack-openmpi/3.1.4 can be loaded now.

But the GNU version of spac-stack 1.6.0 misses lots of modules availabe under the INTEL version of spack-stack 1.6.0:

“hdf5/1.14.0", "fms/2023.04", ""parallel-netcdf/1.12.2"", "netcdf-c/4.9.2", "py-netcdf4/1.5.8", "netcdf-fortran/4.6.1", "parallelio/2.5.10", "netcdf-cxx4/4.3.1", "ncview/2.1.9", "nco/5.0.6", "nccmp/1.9.0.1"

@RatkoVasic-NOAA
Copy link
Collaborator

@guoqing-noaa I see. Yes, you are right.
GNU was never installed properly on Jet since nobody was using it. I don't think anybody have capacity to go back and try to install old spack-stack GNU on Jet.
But, I have one suggestion if you would like to try GNU on Jet. I think spack-stack-1.8.0 has complete GNU install:

[role.epic@Jet:~]$ module use /contrib/spack-stack/spack-stack-1.8.0/envs/ue-gcc-9.2.0/install/modulefiles/Core
[role.epic@Jet:~]$ module load stack-gcc/9.2.0
[role.epic@Jet:~]$ module load stack-openmpi/4.1.6
[role.epic@Jet:~]$ module avail

This will give you available versions of libraries that you would have to change in your modulefile.

@guoqing-noaa
Copy link
Author

@RatkoVasic-NOAA Thanks! I tried v1.8.0 and it lacks the following packages:

zlib
pkg-config
pcre2

I am not sure whether they are required, but they are in my current module file.

@rickgrubin-tomorrow
Copy link

What package / model are you trying to build? A pointer to a github repository would be helpful.

@guoqing-noaa
Copy link
Author

@rickgrubin-tomorrow I am trying to build RDASApp
https://github.com/NOAA-EMC/RDASApp
It is a custmozied version of JEDI.

@RatkoVasic-NOAA
Copy link
Collaborator

For zlib, you can use zlib-ng/2.1.6
For pkg-config you can use system installed:

prepend_path("MANPATH", "/usr/share/man", ":")
prepend_path("ACLOCAL_PATH", "/usr/share/aclocal", ":")
prepend_path("PKG_CONFIG_PATH", "/usr/lib64/pkgconfig", ":")
prepend_path("MANPATH", "/usr/share/man", ":")
prepend_path("ACLOCAL_PATH", "/usr/share/aclocal", ":")
prepend_path("PKG_CONFIG_PATH", "/usr/lib64/pkgconfig", ":")
prepend_path("PKG_CONFIG_PATH", "/usr/share/pkgconfig", ":")
setenv("pkg_config_ROOT", "/usr")

But for pcre2, I can only hope that you don't need.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something is not working OAR-EPIC NOAA Oceanic and Atmospheric Research and Earth Prediction Innovation Center
Projects
None yet
Development

No branches or pull requests

5 participants