Skip to content

Commit

Permalink
Update (partially) global-workflow for orion+rocky9 (NOAA-EMC#2741)
Browse files Browse the repository at this point in the history
This PR:
- updates a few submodules (GSI, GSI-utils, GSI-monitor, UFS_utils,
GFS-utils) to include recent update to their modulefiles for
Orion+Rocky9 upgrade
- updates the modulefiles in global-workflow to load modules from
Orion+Rocky9 paths
- updates modulefiles for `gwsetup` and `gwci` as well.
- removes NCL and GEMPAK from Orion. NCL is not used and GEMPAK is not
installed.
- adds `parm/config.gfs/config.resources.ORION` to address GSI
performance degradation after Rocky 9 upgrade.

This PR:
- does not update the build for UPP. Standalone UPP is not available via
ufs-weather-model as of NOAA-EMC#2729
- will need a follow-up update for `prepobs` and `fit2obs` updated
locations when they are installed in `glopara` space on Orion.
 

# Type of change
- Maintenance (code refactor, clean-up, new CI test, etc.)

# Change characteristics
- Is this a breaking change (a change in existing functionality)? NO
- Does this change require a documentation update? NO

# How has this been tested?
This PR is not sufficient for Orion.
This PR must be tested on other platforms (Hera, WCOSS2) as this PR
updates submodules.

# Checklist
- [ ] Any dependent changes have been merged and published
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] My changes generate no new warnings
- [ ] New and existing tests pass with my changes
- [ ] I have made corresponding changes to the documentation if
necessary

---------

Co-authored-by: Kate Friedman <[email protected]>
  • Loading branch information
aerorahul and KateFriedman-NOAA authored Jul 5, 2024
1 parent d65d3d2 commit 58fca16
Show file tree
Hide file tree
Showing 12 changed files with 40 additions and 30 deletions.
9 changes: 4 additions & 5 deletions modulefiles/module_base.orion.lua
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@ load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None")))
load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None")))
load(pathJoin("python", (os.getenv("python_ver") or "None")))

load(pathJoin("gempak", (os.getenv("gempak_ver") or "None")))
load(pathJoin("ncl", (os.getenv("ncl_ver") or "None")))
load(pathJoin("jasper", (os.getenv("jasper_ver") or "None")))
load(pathJoin("libpng", (os.getenv("libpng_ver") or "None")))
load(pathJoin("cdo", (os.getenv("cdo_ver") or "None")))
Expand Down Expand Up @@ -44,11 +42,12 @@ setenv("WGRIB2","wgrib2")
setenv("WGRIB","wgrib")
setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None"))

--prepend_path("MODULEPATH", pathJoin("/work/noaa/global/glopara/git/prepobs/v" .. (os.getenv("prepobs_run_ver") or "None"), "modulefiles"))
prepend_path("MODULEPATH", pathJoin("/work/noaa/global/glopara/git/prepobs/feature-GFSv17_com_reorg_log_update/modulefiles"))
--prepend_path("MODULEPATH", "/work/noaa/global/glopara/git/prepobs/feature-GFSv17_com_reorg_log_update/modulefiles")
prepend_path("MODULEPATH", pathJoin("/work/noaa/global/kfriedma/glopara/git/prepobs/v" .. (os.getenv("prepobs_run_ver") or "None"), "modulefiles"))
load(pathJoin("prepobs", (os.getenv("prepobs_run_ver") or "None")))

prepend_path("MODULEPATH", pathJoin("/work/noaa/global/glopara/git/Fit2Obs/v" .. (os.getenv("fit2obs_ver") or "None"), "modulefiles"))
--prepend_path("MODULEPATH", pathJoin("/work/noaa/global/glopara/git/Fit2Obs/v" .. (os.getenv("fit2obs_ver") or "None"), "modulefiles"))
prepend_path("MODULEPATH", pathJoin("/work/noaa/global/kfriedma/glopara/git/Fit2Obs/v" .. (os.getenv("fit2obs_ver") or "None"), "modulefiles"))
load(pathJoin("fit2obs", (os.getenv("fit2obs_ver") or "None")))

whatis("Description: GFS run environment")
6 changes: 3 additions & 3 deletions modulefiles/module_gwci.orion.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ help([[
Load environment to run GFS workflow ci scripts on Orion
]])

prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core")
prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env-rocky9/install/modulefiles/Core")

load(pathJoin("stack-intel", os.getenv("2022.0.2")))
load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1")))
load(pathJoin("stack-intel", os.getenv("2021.9.0")))
load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0")))

load(pathJoin("netcdf-c", os.getenv("4.9.2")))
load(pathJoin("netcdf-fortran", os.getenv("4.6.1")))
Expand Down
6 changes: 3 additions & 3 deletions modulefiles/module_gwsetup.orion.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ Load environment to run GFS workflow ci scripts on Orion

prepend_path("MODULEPATH", "/apps/modulefiles/core")
load(pathJoin("contrib","0.1"))
load(pathJoin("rocoto","1.3.3"))
load(pathJoin("rocoto","1.3.7"))

prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core")
prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env-rocky9/install/modulefiles/Core")

local stack_intel_ver=os.getenv("stack_intel_ver") or "2022.0.2"
local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0"
local python_ver=os.getenv("python_ver") or "3.11.6"

load(pathJoin("stack-intel", stack_intel_ver))
Expand Down
17 changes: 17 additions & 0 deletions parm/config/gfs/config.resources.ORION
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#! /usr/bin/env bash

# Orion-specific job resources

case ${step} in
"anal")
# TODO:
# On Orion, after Rocky 9 upgrade, GSI performance is degraded.
# Remove this block once GSI issue is resolved
# https://github.com/NOAA-EMC/GSI/pull/764
# https://github.com/JCSDA/spack-stack/issues/1166
export wtime_anal_gdas="02:40:00"
export wtime_anal_gfs="02:00:00"
;;
*)
;;
esac
2 changes: 1 addition & 1 deletion sorc/gsi_utils.fd
2 changes: 1 addition & 1 deletion sorc/ufs_utils.fd
Submodule ufs_utils.fd updated 52 files
+2 −0 CMakeLists.txt
+11 −7 docs/main.md
+3 −3 modulefiles/build.orion.intel.lua
+7 −9 reg_tests/cpld_gridgen/rt.conf
+1 −11 reg_tests/cpld_gridgen/rt.sh
+2 −6 reg_tests/ice_blend/driver.orion.sh
+34 −0 reg_tests/ocnice_prep/RegressionTests_hera.intel.log
+34 −0 reg_tests/ocnice_prep/RegressionTests_hercules.intel.log
+34 −0 reg_tests/ocnice_prep/RegressionTests_jet.intel.log
+34 −0 reg_tests/ocnice_prep/RegressionTests_orion.intel.log
+34 −0 reg_tests/ocnice_prep/RegressionTests_wcoss2.intel.log
+52 −0 reg_tests/ocnice_prep/parm/ice.csv
+8 −0 reg_tests/ocnice_prep/parm/ocean.csv
+8 −0 reg_tests/ocnice_prep/parm/ocniceprep.nml.IN
+10 −0 reg_tests/ocnice_prep/rt.conf
+325 −0 reg_tests/ocnice_prep/rt.sh
+21 −1 reg_tests/rt.sh
+2 −2 reg_tests/snow2mdl/driver.orion.sh
+3 −1 sorc/CMakeLists.txt
+1 −1 sorc/cpld_gridgen.fd/docs/Doxyfile.in
+ sorc/cpld_gridgen.fd/docs/_static/murray.png
+149 −47 sorc/cpld_gridgen.fd/docs/cpld_gridgen.md
+36 −40 sorc/cpld_gridgen.fd/gen_fixgrid.F90
+2 −26 sorc/cpld_gridgen.fd/postwgts.F90
+12 −9 sorc/machine-setup.sh
+44 −0 sorc/ocnice_prep.fd/CMakeLists.txt
+121 −0 sorc/ocnice_prep.fd/arrays_mod.F90
+16 −0 sorc/ocnice_prep.fd/docs/CMakeLists.txt
+2,573 −0 sorc/ocnice_prep.fd/docs/Doxyfile.in
+3 −0 sorc/ocnice_prep.fd/docs/README.md
+135 −0 sorc/ocnice_prep.fd/docs/ocnice_prep.md
+246 −0 sorc/ocnice_prep.fd/init_mod.F90
+114 −0 sorc/ocnice_prep.fd/ocncalc_mod.F90
+360 −0 sorc/ocnice_prep.fd/ocniceprep.F90
+229 −0 sorc/ocnice_prep.fd/restarts_mod.F90
+515 −0 sorc/ocnice_prep.fd/utils_esmf_mod.F90
+723 −0 sorc/ocnice_prep.fd/utils_mod.F90
+2 −1 tests/CMakeLists.txt
+40 −0 tests/ocnice_prep/CMakeLists.txt
+2 −0 tests/ocnice_prep/LSanSuppress.supp
+52 −0 tests/ocnice_prep/data/ice.badvecgrid.csv
+52 −0 tests/ocnice_prep/data/ice.badvecpairs.csv
+8 −0 tests/ocnice_prep/data/invalid.dst5p00.nml
+8 −0 tests/ocnice_prep/data/invalid.dstdim.nml
+8 −0 tests/ocnice_prep/data/invalid.model.nml
+8 −0 tests/ocnice_prep/data/invalid.srcdim.nml
+8 −0 tests/ocnice_prep/data/ocean.badvecgrid.csv
+8 −0 tests/ocnice_prep/data/ocean.badvecpairs.csv
+71 −0 tests/ocnice_prep/ftst_program_setup.F90
+0 −1 ush/cpld_gridgen.sh
+49 −0 ush/ocnice_prep.sh
+1 −1 util/gdas_init/copy_coldstart_files.sh
4 changes: 2 additions & 2 deletions ush/detect_machine.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ case $(hostname -f) in
*) MACHINE_ID=UNKNOWN ;; # Unknown platform
esac

if [[ ${MACHINE_ID} == "UNKNOWN" ]]; then
if [[ ${MACHINE_ID} == "UNKNOWN" ]]; then
case ${PW_CSP:-} in
"aws" | "google" | "azure") MACHINE_ID=noaacloud ;;
*) PW_CSP="UNKNOWN"
Expand Down Expand Up @@ -75,7 +75,7 @@ elif [[ -d /scratch1 ]]; then
MACHINE_ID=hera
elif [[ -d /work ]]; then
# We are on MSU Orion or Hercules
mount=$(findmnt -n -o SOURCE /home)
mount=$(findmnt -n -o SOURCE /home)
if [[ ${mount} =~ "hercules" ]]; then
MACHINE_ID=hercules
else
Expand Down
6 changes: 3 additions & 3 deletions versions/build.orion.ver
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
export stack_intel_ver=2022.0.2
export stack_impi_ver=2021.5.1
export spack_env=gsi-addon-env
export stack_intel_ver=2021.9.0
export stack_impi_ver=2021.9.0
export spack_env=gsi-addon-env-rocky9
source "${HOMEgfs:-}/versions/build.spack.ver"
export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core"
12 changes: 3 additions & 9 deletions versions/run.orion.ver
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
export stack_intel_ver=2022.0.2
export stack_impi_ver=2021.5.1
export spack_env=gsi-addon-env

export ncl_ver=6.6.2
export gempak_ver=7.5.1
export stack_intel_ver=2021.9.0
export stack_impi_ver=2021.9.0
export spack_env=gsi-addon-env-rocky9

source "${HOMEgfs:-}/versions/run.spack.ver"
export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core"

#cdo is older on Orion
export cdo_ver=2.0.5

0 comments on commit 58fca16

Please sign in to comment.