Skip to content

Add grib-util to modulefile#1823

Merged
RussTreadon-NOAA merged 6 commits into
developfrom
feature/add_grib2_mod
Jul 30, 2025
Merged

Add grib-util to modulefile#1823
RussTreadon-NOAA merged 6 commits into
developfrom
feature/add_grib2_mod

Conversation

@ypwang19
Copy link
Copy Markdown
Collaborator

@ypwang19 ypwang19 commented Jul 29, 2025

Description

To run UPP in global-workflow for GCAFS, module grib-util should be loaded. This PR adds the grib-util module to the module files.

Companion PRs

NOAA-EMC/global-workflow#3889

Issues

This PR is a companion PR for issue NOAA-EMC/global-workflow#3888

Automated CI tests to run in Global Workflow

  • C96_gcafs_cycled

@ypwang19 ypwang19 requested a review from CoryMartin-NOAA July 29, 2025 19:38
@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

Two questions, @ypwang19

  1. This PR adds grib-util/1.4.0 to ursa.intel.lua, but the other modulefiles load grib-util/1.3.0. A check of NOAA RDHPCS and WCOSS2 shows that grib-util/1.4.0 is available on all except WCOSS2. Would it make sense to load grib-util/1.4.0 for all machines except WCOSS2 in this PR?
    • NOTE: grib-util/1.4.0 will be available when GDASApp moves to WCOSS2 spack-stack/1.9.2.. GDASApp PR #1816 can update wcoss2.intel.lua to grib-util/1.4.0.
  2. hercules.intel.lua does not load grib-util. Should this PR add grib-util/1.4.0 to hercules.intel.lua?

@CoryMartin-NOAA
Copy link
Copy Markdown
Contributor

DavidNew-NOAA
DavidNew-NOAA previously approved these changes Jul 29, 2025
@ypwang19 ypwang19 dismissed stale reviews from DavidNew-NOAA and CoryMartin-NOAA via 5979a71 July 29, 2025 20:47
DavidNew-NOAA
DavidNew-NOAA previously approved these changes Jul 29, 2025
@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

Test

Clone feature/add_grib2_mod on Gaea C5, Gaea C6, Hera, Hercules, Orion, Ursa, and WCOSS2 (Cactus). Load the appropriate ${MACHINE_ID}.intel.lua on each machine.

The load was only successful on Gaea C5..

Below are the error messages on other machines

Gaea C6

Gaea(gaea66):/gpfs/f6/ira-sti/scratch/Russ.Treadon/git/GDASApp/add_grib2_mod$ module load GDAS/gaeac6.intel

Lmod is automatically replacing "intel/2025.0" with "intel-classic/2023.2.0".

Lmod has detected the following error:  These module(s) or extension(s) exist but cannot be loaded as requested:
"grib-util/1.3.0"
   Try: "module spider grib-util/1.3.0" to see how to load the module(s).

Executing this command requires loading "grib-util/1.3.0" which failed while processing the following module(s):

    Module fullname    Module Filename
    ---------------    ---------------
    GDAS/gaeac6.intel  /gpfs/f6/ira-sti/scratch/Russ.Treadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/gaeac6.intel.lua

Hera

Hera(hfe01):/scratch3/NCEPDEV/da/Russ.Treadon/git/GDASApp/add_grib2_mod$ module load GDAS/hera.intel
Lmod has detected the following error:  These module(s) or extension(s) exist but cannot be loaded as requested: "grib-util/1.3.0", "zlib/1.2.13"
   Try: "module spider grib-util/1.3.0 zlib/1.2.13" to see how to load the module(s).

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

    Module fullname  Module Filename
    ---------------  ---------------
    GDAS/hera.intel  /scratch3/NCEPDEV/da/Russ.Treadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/hera.intel.luaExecuting this command requires loading "grib-util/1.3.0" which failed while processing the following module(s):

    Module fullname  Module Filename
    ---------------  ---------------
    GDAS/hera.intel  /scratch3/NCEPDEV/da/Russ.Treadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/hera.intel.lua

Hercules

hercules-login-2:/work/noaa/da/rtreadon/git/GDASApp/add_grib2_mod$ module load GDAS/hercules.intel
Lmod has detected the following error:  The following module(s) are unknown: "grib-util/1.3.0"

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 "grib-util/1.3.0"

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

Executing this command requires loading "grib-util/1.3.0" which failed while processing the following module(s):

    Module fullname      Module Filename
    ---------------      ---------------
    GDAS/hercules.intel  /work/noaa/da/rtreadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/hercules.intel.lua

Orion

orion-login-2:/work2/noaa/da/rtreadon/git/GDASApp/add_grib2_mod$ module load GDAS/orion.intel
Lmod has detected the following error:  The following module(s) are unknown: "grib-util/1.3.0" "gettext/0.22.5"

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 "grib-util/1.3.0" "gettext/0.22.5"

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

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

    Module fullname   Module Filename
    ---------------   ---------------
    GDAS/orion.intel  /work2/noaa/da/rtreadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/orion.intel.luaExecuting this command requires loading "grib-util/1.3.0" which failed while processing the following module(s):

    Module fullname   Module Filename
    ---------------   ---------------
    GDAS/orion.intel  /work2/noaa/da/rtreadon/git/GDASApp/add_grib2_mod/modulefiles/GDAS/orion.intel.lua

Ursa

Ursa(ufe02):/scratch3/NCEPDEV/da/Russ.Treadon/git/GDASApp/add_grib2_mod_ursa$ module load GDAS/ursa.intel
Lmod has detected the following error:  The following module(s) are unknown: "grib-util/1.3.0"

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 "grib-util/1.3.0"

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

Executing this command requires loading "grib-util/1.3.0" which failed while processing the following module(s):

    Module fullname  Module Filename
    ---------------  ---------------
    GDAS/ursa.intel  /scratch3/NCEPDEV/da/Russ.Treadon/git/GDASApp/add_grib2_mod_ursa/modulefiles/GDAS/ursa.intel.lua

WCOSS2 (Cactus)
module load wcoss2.intel.lua did not return any errors BUT module list after loading wcoss2.intel/lua did not show grib-util/1.2.3 in the listing. module spider grib-util returned

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  grib-util:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
     Versions:
        grib-util/1.3.0
        grib-util/1.4.0

@TaylorRoper-NOAA
Copy link
Copy Markdown
Contributor

For the noaacloud, can the version be moved up to 1.4.0? I believe 1.3.0 is only available using spack-stack 1.6.0 environments. The g-w PR NOAA-EMC/global-workflow#3798 that ports the workflow to spack-stack 1.9.2 will set the run-time version of grib-util to 1.4.0 (https://github.com/DavidHuber-NOAA/global-workflow/blob/842a5c4dbcc0f8839f97a00ce1faef58fcdad90f/versions/spack.ver#L32). The cloud env is currently working off of @DavidHuber-NOAA's feature/191 branch that sets the 1.4.0 version.

@CoryMartin-NOAA
Copy link
Copy Markdown
Contributor

Yeah based on this I think we should plan to use 1.4.0 everywhere we can, and keep wcoss lower for now. I was naively thinking about develop of the workflow but spack stack 1.9.2 is imminent there

@ypwang19 ypwang19 dismissed stale reviews from CoryMartin-NOAA and DavidNew-NOAA via cd83adb July 29, 2025 22:07
@ypwang19
Copy link
Copy Markdown
Collaborator Author

@RussTreadon-NOAA Thanks for the test! I didn't realize I could just test them like that.
I just update them all to 1.4.0.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

Test 2

Repeat previous test using feature/add_grib2_mod at cd83adb. All module load GDAS/${MACHINE_ID}.intel worked except gaeac5.intel.lua and wcoss2.intel.lua.

The Gaea C5 module loads from spack-stack-1.6.0. Change grib-util/1.4.0 to grib-util/1.3.0 in gaeac5.intel.lua. module load GDAS/gaeac5.intel correctly loaded grib-util/1.3.0.

The WCOSS2 module loads from spack-stack-1.6.0. Change grib-util/1.4.0 to grib-util/1.3.0 in wcoss2.intel.lua. module load GDAS/wcoss2.intel correctly loaded grib-util/1.3.0.

Confirmed that module load GDAS/${MACHINE_ID}.intel correctly loaded grib-util/1.4.0 on other machines.

Did not test hercules.gnu.lua and noaacloud.intel.lua.

Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA RussTreadon-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ypwang19 for updating to grib-util/1.4.0 on spack-stack/1.9 machines. The modulefiles for two machines still use spack-stack/1.6. We should load grib-util/1.3.0 on these machines.

Comment thread modulefiles/GDAS/gaeac5.intel.lua Outdated
Comment thread modulefiles/GDAS/wcoss2.intel.lua Outdated
Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA RussTreadon-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updating working copy of feature/add_grib2_mod on Gaea C5 and WCOSS2 (Cactus). Successfully load ${MACHINE_ID}.intel.lua on each machine. grib-util/1.3.0 was loaded.

Approve.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

I'll merge this PR into develop this afternoon (7/30/2025) unless anyone has objections.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

Thanks @CoryMartin-NOAA . Merging now.

@RussTreadon-NOAA RussTreadon-NOAA merged commit 0067f11 into develop Jul 30, 2025
5 checks passed
@RussTreadon-NOAA RussTreadon-NOAA deleted the feature/add_grib2_mod branch July 30, 2025 16:24
DavidNew-NOAA pushed a commit that referenced this pull request Jan 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants