From 21ff6458aac9372b26cc223f6a114953a137067e Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Fri, 19 Jan 2024 21:11:34 +0000 Subject: [PATCH 01/53] Update modulefiles, submodules to spack-stack 1.6.0. #2195 --- modulefiles/module_gwci.hera.lua | 2 +- modulefiles/module_gwci.hercules.lua | 2 +- modulefiles/module_gwci.orion.lua | 2 +- modulefiles/module_gwsetup.hera.lua | 4 ++-- modulefiles/module_gwsetup.hercules.lua | 4 ++-- modulefiles/module_gwsetup.jet.lua | 4 ++-- modulefiles/module_gwsetup.orion.lua | 4 ++-- modulefiles/module_gwsetup.s4.lua | 4 ++-- sorc/gfs_utils.fd | 2 +- sorc/gsi_enkf.fd | 2 +- sorc/gsi_monitor.fd | 2 +- sorc/gsi_utils.fd | 2 +- sorc/ufs_model.fd | 2 +- sorc/ufs_utils.fd | 2 +- versions/build.spack.ver | 8 ++++---- versions/run.hercules.ver | 4 ---- versions/run.spack.ver | 10 +++++----- 17 files changed, 28 insertions(+), 32 deletions(-) diff --git a/modulefiles/module_gwci.hera.lua b/modulefiles/module_gwci.hera.lua index 1aecddf549..f2c32241ff 100644 --- a/modulefiles/module_gwci.hera.lua +++ b/modulefiles/module_gwci.hera.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow setup scripts on Hera ]]) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.5.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) diff --git a/modulefiles/module_gwci.hercules.lua b/modulefiles/module_gwci.hercules.lua index 9c60aed467..7b2c2dd880 100644 --- a/modulefiles/module_gwci.hercules.lua +++ b/modulefiles/module_gwci.hercules.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow ci scripts on Hercules ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.9.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0"))) diff --git a/modulefiles/module_gwci.orion.lua b/modulefiles/module_gwci.orion.lua index 18851ba7d4..48b6e94f97 100644 --- a/modulefiles/module_gwci.orion.lua +++ b/modulefiles/module_gwci.orion.lua @@ -2,7 +2,7 @@ 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.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2022.0.2"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) diff --git a/modulefiles/module_gwsetup.hera.lua b/modulefiles/module_gwsetup.hera.lua index c86cac7b02..db30c7ac48 100644 --- a/modulefiles/module_gwsetup.hera.lua +++ b/modulefiles/module_gwsetup.hera.lua @@ -4,10 +4,10 @@ Load environment to run GFS workflow setup scripts on Hera load(pathJoin("rocoto")) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/modulefiles/module_gwsetup.hercules.lua b/modulefiles/module_gwsetup.hercules.lua index 673928605c..c80b97bd45 100644 --- a/modulefiles/module_gwsetup.hercules.lua +++ b/modulefiles/module_gwsetup.hercules.lua @@ -5,10 +5,10 @@ Load environment to run GFS workflow ci scripts on Hercules load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.5")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/modulefiles/module_gwsetup.jet.lua b/modulefiles/module_gwsetup.jet.lua index d08389c711..e958066579 100644 --- a/modulefiles/module_gwsetup.jet.lua +++ b/modulefiles/module_gwsetup.jet.lua @@ -4,10 +4,10 @@ Load environment to run GFS workflow setup scripts on Jet load(pathJoin("rocoto", "1.3.3")) -prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/modulefiles/module_gwsetup.orion.lua b/modulefiles/module_gwsetup.orion.lua index 93a59c8e50..efa3130a33 100644 --- a/modulefiles/module_gwsetup.orion.lua +++ b/modulefiles/module_gwsetup.orion.lua @@ -7,10 +7,10 @@ load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.3")) load(pathJoin("git","2.28.0")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2022.0.2" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/modulefiles/module_gwsetup.s4.lua b/modulefiles/module_gwsetup.s4.lua index 291c654bb3..197926f38b 100644 --- a/modulefiles/module_gwsetup.s4.lua +++ b/modulefiles/module_gwsetup.s4.lua @@ -5,10 +5,10 @@ Load environment to run GFS workflow setup scripts on S4 load(pathJoin("rocoto","1.3.5")) load(pathJoin("git","2.30.0")) -prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/sorc/gfs_utils.fd b/sorc/gfs_utils.fd index 7d3b08e87c..df7678e6c9 160000 --- a/sorc/gfs_utils.fd +++ b/sorc/gfs_utils.fd @@ -1 +1 @@ -Subproject commit 7d3b08e87c07cfa54079442d245ac7e9ab1cd9f4 +Subproject commit df7678e6c93658618dda6113e291e772b4dd53ef diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index c94bc72ff4..7f3969a475 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit c94bc72ff410b48c325abbfe92c9fcb601d89aed +Subproject commit 7f3969a475e782c7a0fa6ed91369e97b51ae4dcb diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index ae256c0d69..1adce02c9c 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit ae256c0d69df3232ee9dd3e81b176bf2c3cda312 +Subproject commit 1adce02c9c128cf9d1b22bde80aaef9dc6bb02a3 diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 90481d9618..81d106d5f1 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 90481d961854e4412ecac49991721e6e63d4b82e +Subproject commit 81d106d5f17358c8ee6ff547e05107d1ff225bd3 diff --git a/sorc/ufs_model.fd b/sorc/ufs_model.fd index a837cfcb0c..60afb2c1a6 160000 --- a/sorc/ufs_model.fd +++ b/sorc/ufs_model.fd @@ -1 +1 @@ -Subproject commit a837cfcb0c79803e13a1375a362d3d0b14b62320 +Subproject commit 60afb2c1a67d7621f21b98d0a9795d26fc395afc diff --git a/sorc/ufs_utils.fd b/sorc/ufs_utils.fd index ce385cedfa..a92833ab65 160000 --- a/sorc/ufs_utils.fd +++ b/sorc/ufs_utils.fd @@ -1 +1 @@ -Subproject commit ce385cedfa9abd46b0905e8d6486b0339a9e4267 +Subproject commit a92833ab65b09f476e44ca101c9b183562e97fe9 diff --git a/versions/build.spack.ver b/versions/build.spack.ver index fb5b244bf5..b5286658d9 100644 --- a/versions/build.spack.ver +++ b/versions/build.spack.ver @@ -1,4 +1,4 @@ -export spack_stack_ver=1.5.1 +export spack_stack_ver=1.6.0 export spack_env=gsi-addon export cmake_ver=3.23.1 @@ -11,7 +11,7 @@ export fms_ver=2023.02.01 export hdf5_ver=1.14.0 export netcdf_c_ver=4.9.2 -export netcdf_fortran_ver=4.6.0 +export netcdf_fortran_ver=4.6.1 export bacio_ver=2.4.1 export nemsio_ver=2.5.4 @@ -19,10 +19,10 @@ export sigio_ver=2.3.2 export w3emc_ver=2.10.0 export bufr_ver=11.7.0 export g2_ver=3.4.5 -export sp_ver=2.3.3 +export sp_ver=2.5.0 export ip_ver=4.3.0 export gsi_ncdiag_ver=1.1.2 export g2tmpl_ver=1.10.2 -export crtm_ver=2.4.0 +export crtm_ver=2.4.0.1 export wgrib2_ver=2.0.8 export grib_util_ver=1.3.0 diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index 43f1b2181d..f692854931 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -6,7 +6,3 @@ export ncl_ver=6.6.2 export perl_ver=5.36.0 source "${HOMEgfs:-}/versions/run.spack.ver" - -# wgrib2 and cdo are different on Hercules from all the other systems -export wgrib2_ver=3.1.1 -export cdo_ver=2.2.0 diff --git a/versions/run.spack.ver b/versions/run.spack.ver index c1c13f58df..fba8678fca 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -1,23 +1,23 @@ -export spack_stack_ver=1.5.1 +export spack_stack_ver=1.6.0 export spack_env=gsi-addon export python_ver=3.10.8 export jasper_ver=2.0.32 export libpng_ver=1.6.37 -export cdo_ver=2.0.5 +export cdo_ver=2.2.0 export nco_ver=5.0.6 export hdf5_ver=1.14.0 export netcdf_c_ver=4.9.2 -export netcdf_fortran_ver=4.6.0 +export netcdf_fortran_ver=4.6.1 export bufr_ver=11.7.0 export gsi_ncdiag_ver=1.1.2 export g2tmpl_ver=1.10.2 -export crtm_ver=2.4.0 +export crtm_ver=2.4.0.1 export wgrib2_ver=2.0.8 export grib_util_ver=1.3.0 -export prod_util_ver=1.2.2 +export prod_util_ver=2.1.1 export py_netcdf4_ver=1.5.8 export py_pyyaml_ver=5.4.1 export py_jinja2_ver=3.1.2 From 9a09d3082208ad206cf6e7103a53bfb7c4946f4a Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Fri, 19 Jan 2024 21:23:50 +0000 Subject: [PATCH 02/53] Corrected gsi-addon-dev spelling. --- modulefiles/module_gwci.hera.lua | 2 +- modulefiles/module_gwci.hercules.lua | 2 +- modulefiles/module_gwci.orion.lua | 2 +- modulefiles/module_gwsetup.hera.lua | 2 +- modulefiles/module_gwsetup.hercules.lua | 2 +- modulefiles/module_gwsetup.jet.lua | 2 +- modulefiles/module_gwsetup.orion.lua | 2 +- modulefiles/module_gwsetup.s4.lua | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modulefiles/module_gwci.hera.lua b/modulefiles/module_gwci.hera.lua index f2c32241ff..bcd759b524 100644 --- a/modulefiles/module_gwci.hera.lua +++ b/modulefiles/module_gwci.hera.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow setup scripts on Hera ]]) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.5.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) diff --git a/modulefiles/module_gwci.hercules.lua b/modulefiles/module_gwci.hercules.lua index 7b2c2dd880..0a70a960ec 100644 --- a/modulefiles/module_gwci.hercules.lua +++ b/modulefiles/module_gwci.hercules.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow ci scripts on Hercules ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.9.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0"))) diff --git a/modulefiles/module_gwci.orion.lua b/modulefiles/module_gwci.orion.lua index 48b6e94f97..9803214712 100644 --- a/modulefiles/module_gwci.orion.lua +++ b/modulefiles/module_gwci.orion.lua @@ -2,7 +2,7 @@ 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/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2022.0.2"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) diff --git a/modulefiles/module_gwsetup.hera.lua b/modulefiles/module_gwsetup.hera.lua index db30c7ac48..0d166d2728 100644 --- a/modulefiles/module_gwsetup.hera.lua +++ b/modulefiles/module_gwsetup.hera.lua @@ -4,7 +4,7 @@ Load environment to run GFS workflow setup scripts on Hera load(pathJoin("rocoto")) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.hercules.lua b/modulefiles/module_gwsetup.hercules.lua index c80b97bd45..32111aed18 100644 --- a/modulefiles/module_gwsetup.hercules.lua +++ b/modulefiles/module_gwsetup.hercules.lua @@ -5,7 +5,7 @@ Load environment to run GFS workflow ci scripts on Hercules load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.5")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.jet.lua b/modulefiles/module_gwsetup.jet.lua index e958066579..8dcab67d2b 100644 --- a/modulefiles/module_gwsetup.jet.lua +++ b/modulefiles/module_gwsetup.jet.lua @@ -4,7 +4,7 @@ Load environment to run GFS workflow setup scripts on Jet load(pathJoin("rocoto", "1.3.3")) -prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.orion.lua b/modulefiles/module_gwsetup.orion.lua index efa3130a33..bd2845c846 100644 --- a/modulefiles/module_gwsetup.orion.lua +++ b/modulefiles/module_gwsetup.orion.lua @@ -7,7 +7,7 @@ load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.3")) load(pathJoin("git","2.28.0")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2022.0.2" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.s4.lua b/modulefiles/module_gwsetup.s4.lua index 197926f38b..602a7f53ec 100644 --- a/modulefiles/module_gwsetup.s4.lua +++ b/modulefiles/module_gwsetup.s4.lua @@ -5,7 +5,7 @@ Load environment to run GFS workflow setup scripts on S4 load(pathJoin("rocoto","1.3.5")) load(pathJoin("git","2.30.0")) -prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" local python_ver=os.getenv("python_ver") or "3.11.6" From 4365f63e54e2ddb9b88e768a6e88a92504b5d482 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Mon, 22 Jan 2024 18:37:25 +0000 Subject: [PATCH 03/53] Corrected the SS env. name in the version files. #2195 --- versions/build.spack.ver | 2 +- versions/run.spack.ver | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/versions/build.spack.ver b/versions/build.spack.ver index b5286658d9..39b6cdadd6 100644 --- a/versions/build.spack.ver +++ b/versions/build.spack.ver @@ -1,5 +1,5 @@ export spack_stack_ver=1.6.0 -export spack_env=gsi-addon +export spack_env=gsi-addon-dev export cmake_ver=3.23.1 diff --git a/versions/run.spack.ver b/versions/run.spack.ver index fba8678fca..5b1af1a338 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -1,6 +1,6 @@ export spack_stack_ver=1.6.0 -export spack_env=gsi-addon -export python_ver=3.10.8 +export spack_env=gsi-addon-dev +export python_ver=3.11.6 export jasper_ver=2.0.32 export libpng_ver=1.6.37 @@ -19,7 +19,7 @@ export wgrib2_ver=2.0.8 export grib_util_ver=1.3.0 export prod_util_ver=2.1.1 export py_netcdf4_ver=1.5.8 -export py_pyyaml_ver=5.4.1 +export py_pyyaml_ver=6.0 export py_jinja2_ver=3.1.2 export obsproc_run_ver=1.1.2 From ccc6e2d445d4c2e2f44fb907c7bc972b1e69f6ff Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Mon, 22 Jan 2024 18:56:18 +0000 Subject: [PATCH 04/53] Reenable verif-global. #2195 --- sorc/verif-global.fd | 2 +- versions/run.hera.ver | 4 ---- versions/run.spack.ver | 3 +++ 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/sorc/verif-global.fd b/sorc/verif-global.fd index c267780a12..1e7baf7982 160000 --- a/sorc/verif-global.fd +++ b/sorc/verif-global.fd @@ -1 +1 @@ -Subproject commit c267780a1255fa7db052c745cf9c78b7dc6a2695 +Subproject commit 1e7baf7982c81067c36768444d5f73e294862911 diff --git a/versions/run.hera.ver b/versions/run.hera.ver index 43443ba715..9ac8ae2ec3 100644 --- a/versions/run.hera.ver +++ b/versions/run.hera.ver @@ -6,8 +6,4 @@ export ncl_ver=6.6.2 export R_ver=3.5.0 export gempak_ver=7.4.2 -#For metplus jobs, not currently working with spack-stack -#export met_ver=9.1.3 -#export metplus_ver=3.1.1 - source "${HOMEgfs:-}/versions/run.spack.ver" diff --git a/versions/run.spack.ver b/versions/run.spack.ver index 5b1af1a338..d5bd3aa84e 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -22,6 +22,9 @@ export py_netcdf4_ver=1.5.8 export py_pyyaml_ver=6.0 export py_jinja2_ver=3.1.2 +export met_ver=9.1.3 +export metplus_ver=3.1.1 + export obsproc_run_ver=1.1.2 export prepobs_run_ver=1.0.1 From e304bbeb364067e411fb50801796d000b44d9147 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Mon, 22 Jan 2024 18:59:34 +0000 Subject: [PATCH 05/53] Better optimize build jobs (more ufs jobs). --- sorc/build_all.sh | 8 ++++---- sorc/build_upp.sh | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/sorc/build_all.sh b/sorc/build_all.sh index c337374428..7cc6b61b7f 100755 --- a/sorc/build_all.sh +++ b/sorc/build_all.sh @@ -115,16 +115,16 @@ build_jobs["ufs"]=8 big_jobs=$((big_jobs+1)) build_opts["ufs"]="${_verbose_opt} ${_build_ufs_opt}" -build_jobs["upp"]=6 # The UPP is hardcoded to use 6 cores +build_jobs["upp"]=2 build_opts["upp"]="" -build_jobs["ufs_utils"]=3 +build_jobs["ufs_utils"]=2 build_opts["ufs_utils"]="${_verbose_opt}" build_jobs["gfs_utils"]=1 build_opts["gfs_utils"]="${_verbose_opt}" -build_jobs["ww3prepost"]=3 +build_jobs["ww3prepost"]=2 build_opts["ww3prepost"]="${_verbose_opt} ${_build_ufs_opt}" # Optional DA builds @@ -142,7 +142,7 @@ if [[ "${_build_gsi}" == "YES" ]]; then build_opts["gsi_enkf"]="${_verbose_opt}" fi if [[ "${_build_gsi}" == "YES" || "${_build_ufsda}" == "YES" ]] ; then - build_jobs["gsi_utils"]=2 + build_jobs["gsi_utils"]=1 build_opts["gsi_utils"]="${_verbose_opt}" if [[ "${MACHINE_ID}" == "hercules" ]]; then echo "NOTE: The GSI Monitor is not supported on Hercules. Disabling build." diff --git a/sorc/build_upp.sh b/sorc/build_upp.sh index a55e96ebc8..393d369dbf 100755 --- a/sorc/build_upp.sh +++ b/sorc/build_upp.sh @@ -6,10 +6,11 @@ cd "${script_dir}" || exit 1 OPTIND=1 _opts="" -while getopts ":dv" option; do +while getopts ":dvj:" option; do case "${option}" in d) _opts+="-d ";; v) _opts+="-v ";; + j) export BUILD_JOBS="${OPTARG}"; echo success ;; :) echo "[${BASH_SOURCE[0]}]: ${option} requires an argument" ;; @@ -27,4 +28,4 @@ fi cd ufs_model.fd/FV3/upp/tests # shellcheck disable=SC2086 -./compile_upp.sh ${_opts} +BUILD_JOBS=${BUILD_JOBS:-8} ./compile_upp.sh ${_opts} From f663d4786f226f8164d348d403e8d105cc3d801b Mon Sep 17 00:00:00 2001 From: David Huber Date: Mon, 22 Jan 2024 14:41:59 -0600 Subject: [PATCH 06/53] Fix gsi-addon paths for hercules, orion, and S4. --- sorc/gfs_utils.fd | 2 +- sorc/gsi_enkf.fd | 2 +- sorc/gsi_monitor.fd | 2 +- sorc/gsi_utils.fd | 2 +- versions/build.hera.ver | 1 + versions/build.hercules.ver | 1 + versions/build.jet.ver | 1 + versions/build.orion.ver | 1 + versions/build.s4.ver | 1 + versions/build.spack.ver | 1 - versions/run.hera.ver | 1 + versions/run.hercules.ver | 1 + versions/run.jet.ver | 1 + versions/run.orion.ver | 1 + versions/run.s4.ver | 1 + versions/run.spack.ver | 1 - 16 files changed, 14 insertions(+), 6 deletions(-) diff --git a/sorc/gfs_utils.fd b/sorc/gfs_utils.fd index df7678e6c9..eb8769c92c 160000 --- a/sorc/gfs_utils.fd +++ b/sorc/gfs_utils.fd @@ -1 +1 @@ -Subproject commit df7678e6c93658618dda6113e291e772b4dd53ef +Subproject commit eb8769c92c1bf27ac0aa32ea48bd192ecefbdd63 diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index 7f3969a475..339bf16c63 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit 7f3969a475e782c7a0fa6ed91369e97b51ae4dcb +Subproject commit 339bf16c6344500b44deccc338273ad233d5212b diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index 1adce02c9c..05ac88562a 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit 1adce02c9c128cf9d1b22bde80aaef9dc6bb02a3 +Subproject commit 05ac88562a1a3acbfcf11870263498bc06fc5169 diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 81d106d5f1..5a506f14bf 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 81d106d5f17358c8ee6ff547e05107d1ff225bd3 +Subproject commit 5a506f14bfd19c37a31a50dac1891e45b3ddc7ec diff --git a/versions/build.hera.ver b/versions/build.hera.ver index ff85b1a801..66ec8e4c6c 100644 --- a/versions/build.hera.ver +++ b/versions/build.hera.ver @@ -1,3 +1,4 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 +export spack_env=gsi-addon-dev source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.hercules.ver b/versions/build.hercules.ver index 5513466631..40c6aeb054 100644 --- a/versions/build.hercules.ver +++ b/versions/build.hercules.ver @@ -1,3 +1,4 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 +export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.jet.ver b/versions/build.jet.ver index ff85b1a801..66ec8e4c6c 100644 --- a/versions/build.jet.ver +++ b/versions/build.jet.ver @@ -1,3 +1,4 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 +export spack_env=gsi-addon-dev source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.orion.ver b/versions/build.orion.ver index ff85b1a801..33f271e93b 100644 --- a/versions/build.orion.ver +++ b/versions/build.orion.ver @@ -1,3 +1,4 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 +export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.s4.ver b/versions/build.s4.ver index a0aae51d87..a75cb612f8 100644 --- a/versions/build.s4.ver +++ b/versions/build.s4.ver @@ -1,3 +1,4 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 +export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.spack.ver b/versions/build.spack.ver index 39b6cdadd6..808f85dd16 100644 --- a/versions/build.spack.ver +++ b/versions/build.spack.ver @@ -1,5 +1,4 @@ export spack_stack_ver=1.6.0 -export spack_env=gsi-addon-dev export cmake_ver=3.23.1 diff --git a/versions/run.hera.ver b/versions/run.hera.ver index 9ac8ae2ec3..0895659307 100644 --- a/versions/run.hera.ver +++ b/versions/run.hera.ver @@ -1,5 +1,6 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 +export spack_env=gsi-addon-dev export hpss_ver=hpss export ncl_ver=6.6.2 diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index f692854931..e9d2c40ec2 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -1,6 +1,7 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export intel_mkl_ver=2023.1.0 +export spack_env=gsi-addon-env export ncl_ver=6.6.2 export perl_ver=5.36.0 diff --git a/versions/run.jet.ver b/versions/run.jet.ver index 18a82cab4f..5192188364 100644 --- a/versions/run.jet.ver +++ b/versions/run.jet.ver @@ -1,5 +1,6 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 +export spack_env=gsi-addon-dev export hpss_ver= export ncl_ver=6.6.2 diff --git a/versions/run.orion.ver b/versions/run.orion.ver index 7671bc028d..835ac99d34 100644 --- a/versions/run.orion.ver +++ b/versions/run.orion.ver @@ -1,5 +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 diff --git a/versions/run.s4.ver b/versions/run.s4.ver index 56817ef439..27a53db299 100644 --- a/versions/run.s4.ver +++ b/versions/run.s4.ver @@ -1,5 +1,6 @@ export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 +export spack_env=gsi-addon-env export ncl_ver=6.4.0-precompiled diff --git a/versions/run.spack.ver b/versions/run.spack.ver index d5bd3aa84e..d861d1f515 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -1,5 +1,4 @@ export spack_stack_ver=1.6.0 -export spack_env=gsi-addon-dev export python_ver=3.11.6 export jasper_ver=2.0.32 From e400068a2951e5fa3b130369861b4a60ece01491 Mon Sep 17 00:00:00 2001 From: David Huber Date: Mon, 22 Jan 2024 15:01:07 -0600 Subject: [PATCH 07/53] More gsi-addon path fixes. --- modulefiles/module_gwci.hercules.lua | 2 +- modulefiles/module_gwci.orion.lua | 2 +- modulefiles/module_gwsetup.hercules.lua | 2 +- modulefiles/module_gwsetup.orion.lua | 2 +- modulefiles/module_gwsetup.s4.lua | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modulefiles/module_gwci.hercules.lua b/modulefiles/module_gwci.hercules.lua index 0a70a960ec..179bbef114 100644 --- a/modulefiles/module_gwci.hercules.lua +++ b/modulefiles/module_gwci.hercules.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow ci scripts on Hercules ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.9.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0"))) diff --git a/modulefiles/module_gwci.orion.lua b/modulefiles/module_gwci.orion.lua index 9803214712..565197fbe4 100644 --- a/modulefiles/module_gwci.orion.lua +++ b/modulefiles/module_gwci.orion.lua @@ -2,7 +2,7 @@ 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-dev/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2022.0.2"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) diff --git a/modulefiles/module_gwsetup.hercules.lua b/modulefiles/module_gwsetup.hercules.lua index 32111aed18..795b295b30 100644 --- a/modulefiles/module_gwsetup.hercules.lua +++ b/modulefiles/module_gwsetup.hercules.lua @@ -5,7 +5,7 @@ Load environment to run GFS workflow ci scripts on Hercules load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.5")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.orion.lua b/modulefiles/module_gwsetup.orion.lua index bd2845c846..96ed50f7f0 100644 --- a/modulefiles/module_gwsetup.orion.lua +++ b/modulefiles/module_gwsetup.orion.lua @@ -7,7 +7,7 @@ load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.3")) load(pathJoin("git","2.28.0")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2022.0.2" local python_ver=os.getenv("python_ver") or "3.11.6" diff --git a/modulefiles/module_gwsetup.s4.lua b/modulefiles/module_gwsetup.s4.lua index 602a7f53ec..77a647006f 100644 --- a/modulefiles/module_gwsetup.s4.lua +++ b/modulefiles/module_gwsetup.s4.lua @@ -5,7 +5,7 @@ Load environment to run GFS workflow setup scripts on S4 load(pathJoin("rocoto","1.3.5")) load(pathJoin("git","2.30.0")) -prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") +prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" local python_ver=os.getenv("python_ver") or "3.11.6" From f775755df5f1579edfafbce9a7b47034907d023f Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 24 Jan 2024 16:59:10 +0000 Subject: [PATCH 08/53] Assign fcsthrs for awips_g2 job. --- jobs/rocoto/awips_g2.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jobs/rocoto/awips_g2.sh b/jobs/rocoto/awips_g2.sh index 121c96d63f..ed5a10c164 100755 --- a/jobs/rocoto/awips_g2.sh +++ b/jobs/rocoto/awips_g2.sh @@ -44,6 +44,7 @@ for fhr3 in ${fhrlst}; do fhmax=240 if (( fhr >= fhmin && fhr <= fhmax )); then if ((fhr % 6 == 0)); then + export fcsthrs="${fhr3}" "${AWIPSG2SH}" fi fi From 4c463548b0c38f36c13c01716fa0b1e91544e440 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 24 Jan 2024 17:05:12 +0000 Subject: [PATCH 09/53] Reenable verif-global support --- modulefiles/module_base.hera.lua | 4 ++++ modulefiles/module_base.hercules.lua | 4 ++++ modulefiles/module_base.jet.lua | 4 ++++ modulefiles/module_base.orion.lua | 4 ++++ modulefiles/module_base.s4.lua | 4 ++++ modulefiles/module_base.wcoss2.lua | 2 ++ parm/config/gfs/config.metp | 1 + sorc/verif-global.fd | 2 +- versions/run.spack.ver | 2 ++ versions/run.wcoss2.ver | 2 ++ 10 files changed, 28 insertions(+), 1 deletion(-) diff --git a/modulefiles/module_base.hera.lua b/modulefiles/module_base.hera.lua index 311fb0a1cf..976cabc54e 100644 --- a/modulefiles/module_base.hera.lua +++ b/modulefiles/module_base.hera.lua @@ -33,6 +33,10 @@ load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) load(pathJoin("py-netcdf4", (os.getenv("py_netcdf4_ver") or "None"))) load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) +load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) +load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) -- MET/METplus are not available for use with spack-stack, yet --load(pathJoin("met", (os.getenv("met_ver") or "None"))) diff --git a/modulefiles/module_base.hercules.lua b/modulefiles/module_base.hercules.lua index d9c8f5ed0b..1d65ac02c5 100644 --- a/modulefiles/module_base.hercules.lua +++ b/modulefiles/module_base.hercules.lua @@ -35,6 +35,10 @@ load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) load(pathJoin("py-netcdf4", (os.getenv("py_netcdf4_ver") or "None"))) load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) +load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) +load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_base.jet.lua b/modulefiles/module_base.jet.lua index 64d35da57a..3cd25a0656 100644 --- a/modulefiles/module_base.jet.lua +++ b/modulefiles/module_base.jet.lua @@ -33,6 +33,10 @@ load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) load(pathJoin("py-netcdf4", (os.getenv("py_netcdf4_ver") or "None"))) load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) +load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) +load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_base.orion.lua b/modulefiles/module_base.orion.lua index 65486855d0..8c020fc6e2 100644 --- a/modulefiles/module_base.orion.lua +++ b/modulefiles/module_base.orion.lua @@ -31,6 +31,10 @@ load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) load(pathJoin("py-netcdf4", (os.getenv("py_netcdf4_ver") or "None"))) load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) +load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) +load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) -- MET/METplus are not yet supported with spack-stack --load(pathJoin("met", (os.getenv("met_ver") or "None"))) diff --git a/modulefiles/module_base.s4.lua b/modulefiles/module_base.s4.lua index d99a93c3f4..28d8886114 100644 --- a/modulefiles/module_base.s4.lua +++ b/modulefiles/module_base.s4.lua @@ -30,6 +30,10 @@ load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) load(pathJoin("py-netcdf4", (os.getenv("py_netcdf4_ver") or "None"))) load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) +load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) +load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_base.wcoss2.lua b/modulefiles/module_base.wcoss2.lua index ee4ee6a5fb..8db2e9a50a 100644 --- a/modulefiles/module_base.wcoss2.lua +++ b/modulefiles/module_base.wcoss2.lua @@ -30,6 +30,8 @@ load(pathJoin("g2tmpl", (os.getenv("g2tmpl_ver") or "None"))) load(pathJoin("ncdiag", (os.getenv("ncdiag_ver") or "None"))) load(pathJoin("crtm", (os.getenv("crtm_ver") or "None"))) load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) --prepend_path("MODULEPATH", pathJoin("/lfs/h2/emc/global/save/emc.global/git/prepobs/v" .. (os.getenv("prepobs_run_ver") or "None"), "modulefiles")) prepend_path("MODULEPATH", pathJoin("/lfs/h2/emc/global/save/emc.global/git/prepobs/feature-GFSv17_com_reorg_log_update/modulefiles")) diff --git a/parm/config/gfs/config.metp b/parm/config/gfs/config.metp index c90903f6a5..8260d1c472 100644 --- a/parm/config/gfs/config.metp +++ b/parm/config/gfs/config.metp @@ -23,6 +23,7 @@ export VERIF_GLOBALSH=${HOMEverif_global}/ush/run_verif_global_in_global_workflo export model=${PSLOT} export model_file_format="pgbf{lead?fmt=%2H}.${CDUMP}.{init?fmt=%Y%m%d%H}.grib2" export model_hpss_dir=${ATARDIR}/.. +export model_dir=${ARCDIR}/.. export get_data_from_hpss="NO" export hpss_walltime="10" ## OUTPUT SETTINGS diff --git a/sorc/verif-global.fd b/sorc/verif-global.fd index 1e7baf7982..3dad0a6a72 160000 --- a/sorc/verif-global.fd +++ b/sorc/verif-global.fd @@ -1 +1 @@ -Subproject commit 1e7baf7982c81067c36768444d5f73e294862911 +Subproject commit 3dad0a6a72e08f7636b7828ec95df9115ad55157 diff --git a/versions/run.spack.ver b/versions/run.spack.ver index d5bd3aa84e..86d250023a 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -21,6 +21,8 @@ export prod_util_ver=2.1.1 export py_netcdf4_ver=1.5.8 export py_pyyaml_ver=6.0 export py_jinja2_ver=3.1.2 +export py_pandas_ver=1.5.3 +export py_python_dateutil_ver=2.8.2 export met_ver=9.1.3 export metplus_ver=3.1.1 diff --git a/versions/run.wcoss2.ver b/versions/run.wcoss2.ver index a188cdea74..0aaad3ec3d 100644 --- a/versions/run.wcoss2.ver +++ b/versions/run.wcoss2.ver @@ -39,6 +39,8 @@ export g2tmpl_ver=1.10.2 export ncdiag_ver=1.0.0 export crtm_ver=2.4.0 export wgrib2_ver=2.0.8 +export met_ver=9.1.3 +export metplus_ver=3.1.1 # Development-only below From a9eaec23d5103ea766342ff81d77df8e0f6d9a58 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 24 Jan 2024 18:52:27 +0000 Subject: [PATCH 10/53] Update gdasapp to include ss/1.6.0 support. --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 6044d09962..543a18139a 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 6044d099626f568a1a671ea86398e2aedfaf72f4 +Subproject commit 543a18139a9f035030e470bc6a028f367c0a110d From afa09e356503f1befc162df9a79dc9ce7414dc22 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 24 Jan 2024 18:59:40 +0000 Subject: [PATCH 11/53] New (cleaner history) gdas hash. --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 543a18139a..43feb08fb6 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 543a18139a9f035030e470bc6a028f367c0a110d +Subproject commit 43feb08fb6ec3b206ace65169abb0ca002c1ba71 From 56b9680803f109720f6439276a0e5783a9c49352 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 24 Jan 2024 19:47:34 +0000 Subject: [PATCH 12/53] Update hashes (revert WCOSS2 modules). --- sorc/gfs_utils.fd | 2 +- sorc/gsi_enkf.fd | 2 +- sorc/gsi_monitor.fd | 2 +- sorc/gsi_utils.fd | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sorc/gfs_utils.fd b/sorc/gfs_utils.fd index eb8769c92c..df7678e6c9 160000 --- a/sorc/gfs_utils.fd +++ b/sorc/gfs_utils.fd @@ -1 +1 @@ -Subproject commit eb8769c92c1bf27ac0aa32ea48bd192ecefbdd63 +Subproject commit df7678e6c93658618dda6113e291e772b4dd53ef diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index 339bf16c63..7f3969a475 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit 339bf16c6344500b44deccc338273ad233d5212b +Subproject commit 7f3969a475e782c7a0fa6ed91369e97b51ae4dcb diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index 05ac88562a..1adce02c9c 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit 05ac88562a1a3acbfcf11870263498bc06fc5169 +Subproject commit 1adce02c9c128cf9d1b22bde80aaef9dc6bb02a3 diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 5a506f14bf..81d106d5f1 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 5a506f14bfd19c37a31a50dac1891e45b3ddc7ec +Subproject commit 81d106d5f17358c8ee6ff547e05107d1ff225bd3 From 6c058039e209c67ea477d37d2d6f76b7a2fa68ac Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 25 Jan 2024 07:48:42 -0600 Subject: [PATCH 13/53] Fix wgrib2/gfs_utils on Hercules. --- sorc/gfs_utils.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gfs_utils.fd b/sorc/gfs_utils.fd index eb8769c92c..1bdc3de6f3 160000 --- a/sorc/gfs_utils.fd +++ b/sorc/gfs_utils.fd @@ -1 +1 @@ -Subproject commit eb8769c92c1bf27ac0aa32ea48bd192ecefbdd63 +Subproject commit 1bdc3de6f37825ad5872f52d3675795cb8fe3811 From 04e0772d9d3e77ac5a24ce4570d48cb41424a08b Mon Sep 17 00:00:00 2001 From: David Huber Date: Fri, 26 Jan 2024 07:16:25 -0600 Subject: [PATCH 14/53] Update ufs_utils hash for spack-stack/1.6.0 support. --- sorc/ufs_utils.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ufs_utils.fd b/sorc/ufs_utils.fd index a92833ab65..547459c1e3 160000 --- a/sorc/ufs_utils.fd +++ b/sorc/ufs_utils.fd @@ -1 +1 @@ -Subproject commit a92833ab65b09f476e44ca101c9b183562e97fe9 +Subproject commit 547459c1e323ca45854d7ac1e1cb11e73f8de408 From 6ffd94fd95f54ceb940f0c9201774ad73fbb055b Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Fri, 26 Jan 2024 16:01:23 +0000 Subject: [PATCH 15/53] Update GDAS hash to include SS/1.6.0 support. --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 43feb08fb6..9ba6bb9916 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 43feb08fb6ec3b206ace65169abb0ca002c1ba71 +Subproject commit 9ba6bb9916abf93de899d88a540904572bdbd7a7 From 2238dd6ac0094ba2ff5e1027e964ef29ad33352c Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Mon, 29 Jan 2024 13:21:30 +0000 Subject: [PATCH 16/53] Update Orion, Hercules, S4 modulefiles. --- sorc/gsi_enkf.fd | 2 +- sorc/gsi_monitor.fd | 2 +- sorc/gsi_utils.fd | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index 7f3969a475..339bf16c63 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit 7f3969a475e782c7a0fa6ed91369e97b51ae4dcb +Subproject commit 339bf16c6344500b44deccc338273ad233d5212b diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index 1adce02c9c..05ac88562a 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit 1adce02c9c128cf9d1b22bde80aaef9dc6bb02a3 +Subproject commit 05ac88562a1a3acbfcf11870263498bc06fc5169 diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 81d106d5f1..5a506f14bf 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 81d106d5f17358c8ee6ff547e05107d1ff225bd3 +Subproject commit 5a506f14bfd19c37a31a50dac1891e45b3ddc7ec From 81557beca9eecd878e7b25b3822e30a4276f4a16 Mon Sep 17 00:00:00 2001 From: David Huber Date: Mon, 29 Jan 2024 12:13:31 -0600 Subject: [PATCH 17/53] Update monitor hash to noaa-emc with SS/1.6.0 support. --- sorc/gsi_monitor.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index 05ac88562a..ae256c0d69 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit 05ac88562a1a3acbfcf11870263498bc06fc5169 +Subproject commit ae256c0d69df3232ee9dd3e81b176bf2c3cda312 From 0400e1f3558be8e34c1298d32e14999c9dd46f8c Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 30 Jan 2024 09:57:11 -0600 Subject: [PATCH 18/53] Fix gfs_utils Orion spack-stack env path. --- sorc/gfs_utils.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gfs_utils.fd b/sorc/gfs_utils.fd index df7678e6c9..1bdc3de6f3 160000 --- a/sorc/gfs_utils.fd +++ b/sorc/gfs_utils.fd @@ -1 +1 @@ -Subproject commit df7678e6c93658618dda6113e291e772b4dd53ef +Subproject commit 1bdc3de6f37825ad5872f52d3675795cb8fe3811 From dae884a7c48b4a30c1844685c3d0ef50c9b78344 Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Wed, 7 Feb 2024 08:29:49 -0700 Subject: [PATCH 19/53] Removed jlogfile and postmsg references within gempak scripts. --- gempak/ush/gempak_gdas_f000_gif.sh | 7 ------- gempak/ush/gempak_gfs_f00_gif.sh | 6 ------ gempak/ush/gempak_gfs_f12_gif.sh | 6 ------ gempak/ush/gempak_gfs_f24_gif.sh | 11 ----------- gempak/ush/gempak_gfs_f36_gif.sh | 11 ----------- gempak/ush/gempak_gfs_f48_gif.sh | 11 ----------- 6 files changed, 52 deletions(-) diff --git a/gempak/ush/gempak_gdas_f000_gif.sh b/gempak/ush/gempak_gdas_f000_gif.sh index cdf7659155..5d399f9124 100755 --- a/gempak/ush/gempak_gdas_f000_gif.sh +++ b/gempak/ush/gempak_gdas_f000_gif.sh @@ -13,9 +13,6 @@ # ######################################################################### - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - set -x MAPAREA="normal" @@ -488,8 +485,4 @@ if [ $SENDCOM = YES ]; then fi - - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit diff --git a/gempak/ush/gempak_gfs_f00_gif.sh b/gempak/ush/gempak_gfs_f00_gif.sh index 2a7cca5c9f..9eaac7c62e 100755 --- a/gempak/ush/gempak_gfs_f00_gif.sh +++ b/gempak/ush/gempak_gfs_f00_gif.sh @@ -15,9 +15,6 @@ # ######################################################################### - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - set -x MAPAREA="normal" @@ -596,7 +593,4 @@ if [ $SENDCOM = YES ]; then ${USHgfs}/make_tif.sh fi - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit diff --git a/gempak/ush/gempak_gfs_f12_gif.sh b/gempak/ush/gempak_gfs_f12_gif.sh index 611252a2e2..7005e96844 100755 --- a/gempak/ush/gempak_gfs_f12_gif.sh +++ b/gempak/ush/gempak_gfs_f12_gif.sh @@ -15,9 +15,6 @@ # ######################################################################### - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - set -x MAPAREA="normal" @@ -207,7 +204,4 @@ if [ $SENDCOM = YES ]; then fi - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit diff --git a/gempak/ush/gempak_gfs_f24_gif.sh b/gempak/ush/gempak_gfs_f24_gif.sh index 53670a29bd..d5dc2f6868 100755 --- a/gempak/ush/gempak_gfs_f24_gif.sh +++ b/gempak/ush/gempak_gfs_f24_gif.sh @@ -16,13 +16,6 @@ # ######################################################################### - - - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - - - set -x @@ -224,8 +217,4 @@ if [ $SENDCOM = YES ]; then fi - - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit diff --git a/gempak/ush/gempak_gfs_f36_gif.sh b/gempak/ush/gempak_gfs_f36_gif.sh index e1999090c0..d219fbfc59 100755 --- a/gempak/ush/gempak_gfs_f36_gif.sh +++ b/gempak/ush/gempak_gfs_f36_gif.sh @@ -16,12 +16,6 @@ # ######################################################################### - - - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - - set -x @@ -223,9 +217,4 @@ if [ $SENDCOM = YES ]; then fi - - - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit diff --git a/gempak/ush/gempak_gfs_f48_gif.sh b/gempak/ush/gempak_gfs_f48_gif.sh index 1e0ba532fd..95c4d6b932 100755 --- a/gempak/ush/gempak_gfs_f48_gif.sh +++ b/gempak/ush/gempak_gfs_f48_gif.sh @@ -16,12 +16,6 @@ # ######################################################################### - - - msg=" Make GEMPAK GIFS utility" - postmsg "$jlogfile" "$msg" - - set -x @@ -223,9 +217,4 @@ if [ $SENDCOM = YES ]; then fi - - - msg=" GEMPAK_GIF ${fhr} hour completed normally" - postmsg "$jlogfile" "$msg" - exit From 5894ca2bf11e8ab7910c69781a9fbe51352a7e8c Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Wed, 7 Feb 2024 08:32:16 -0700 Subject: [PATCH 20/53] Removed dummy variable passed to perl scripts. --- scripts/exglobal_atmos_vminmon.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/exglobal_atmos_vminmon.sh b/scripts/exglobal_atmos_vminmon.sh index a4453dcf1a..aac63f3fb3 100755 --- a/scripts/exglobal_atmos_vminmon.sh +++ b/scripts/exglobal_atmos_vminmon.sh @@ -44,15 +44,15 @@ if [[ -s ${gsistat} ]]; then #------------------------------------------------------------------ # Run the child sccripts. #------------------------------------------------------------------ - "${USHgfs}/minmon_xtrct_costs.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" dummy + "${USHgfs}/minmon_xtrct_costs.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" rc_costs=$? echo "rc_costs = ${rc_costs}" - "${USHgfs}/minmon_xtrct_gnorms.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" dummy + "${USHgfs}/minmon_xtrct_gnorms.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" rc_gnorms=$? echo "rc_gnorms = ${rc_gnorms}" - "${USHgfs}/minmon_xtrct_reduct.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" dummy + "${USHgfs}/minmon_xtrct_reduct.pl" "${MINMON_SUFFIX}" "${PDY}" "${cyc}" "${gsistat}" rc_reduct=$? echo "rc_reduct = ${rc_reduct}" From 4745d4a06148cc6c702c647e12ede4875e3a5862 Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Wed, 7 Feb 2024 08:45:49 -0700 Subject: [PATCH 21/53] Removed jlogfile references. --- ush/minmon_xtrct_costs.pl | 5 ++--- ush/minmon_xtrct_gnorms.pl | 3 +-- ush/minmon_xtrct_reduct.pl | 6 ++---- ush/radmon_verf_time.sh | 2 -- ush/syndat_getjtbul.sh | 4 ---- 5 files changed, 5 insertions(+), 15 deletions(-) diff --git a/ush/minmon_xtrct_costs.pl b/ush/minmon_xtrct_costs.pl index 502032da80..c56ac3bdad 100755 --- a/ush/minmon_xtrct_costs.pl +++ b/ush/minmon_xtrct_costs.pl @@ -22,8 +22,8 @@ # #--------------------------- -if ($#ARGV != 4 ) { - print "usage: minmon_xtrct_costs.pl SUFFIX PDY cyc infile jlogfile\n"; +if ($#ARGV != 3 ) { + print "usage: minmon_xtrct_costs.pl SUFFIX PDY cyc infile\n"; exit; } my $suffix = $ARGV[0]; @@ -31,7 +31,6 @@ my $pdy = $ARGV[1]; my $cyc = $ARGV[2]; my $infile = $ARGV[3]; -my $jlogfile = $ARGV[4]; my $use_costterms = 0; my $no_data = 0.00; diff --git a/ush/minmon_xtrct_gnorms.pl b/ush/minmon_xtrct_gnorms.pl index 0125c58ac8..997ee60ff3 100755 --- a/ush/minmon_xtrct_gnorms.pl +++ b/ush/minmon_xtrct_gnorms.pl @@ -186,7 +186,7 @@ sub updateGnormData { #--------------------------------------------------------------------------- if ($#ARGV != 4 ) { - print "usage: minmon_xtrct_gnorms.pl SUFFIX pdy cyc infile jlogfile\n"; + print "usage: minmon_xtrct_gnorms.pl SUFFIX pdy cyc infile \n"; exit; } @@ -195,7 +195,6 @@ sub updateGnormData { my $pdy = $ARGV[1]; my $cyc = $ARGV[2]; my $infile = $ARGV[3]; -my $jlogfile = $ARGV[4]; my $scr = "minmon_xtrct_gnorms.pl"; diff --git a/ush/minmon_xtrct_reduct.pl b/ush/minmon_xtrct_reduct.pl index 1b8186b6ad..cc5da86af8 100755 --- a/ush/minmon_xtrct_reduct.pl +++ b/ush/minmon_xtrct_reduct.pl @@ -9,20 +9,18 @@ # reduction.ieee_d files ready for GrADS use. #--------------------------------------------------------------------------- -if ($#ARGV != 4 ) { - print "usage: minmon_xtrct_reduct.pl SUFFIX pdy cyc infile jlogfile\n"; +if ($#ARGV != 3 ) { + print "usage: minmon_xtrct_reduct.pl SUFFIX pdy cyc infile\n"; print " suffix is data source identifier\n"; print " pdy is YYYYMMDD of the cycle to be processed\n"; print " cyc is HH of the cycle to be processed\n"; print " infile is the data file containing the reduction stats\n"; - print " jlogfile is the job log file\n"; exit; } my $suffix = $ARGV[0]; my $pdy = $ARGV[1]; my $cyc = $ARGV[2]; my $infile = $ARGV[3]; -my $jlogfile = $ARGV[4]; my $scr = "minmon_xtrct_reduct.pl"; print "$scr has started\n"; diff --git a/ush/radmon_verf_time.sh b/ush/radmon_verf_time.sh index 7f98407ec5..0df8029166 100755 --- a/ush/radmon_verf_time.sh +++ b/ush/radmon_verf_time.sh @@ -75,8 +75,6 @@ source "${HOMEgfs}/ush/preamble.sh" #################################################################### # File names -#pgmout=${pgmout:-${jlogfile}} -#touch $pgmout radmon_err_rpt=${radmon_err_rpt:-${USHgfs}/radmon_err_rpt.sh} base_file=${base_file:-${PARMmonitor}/gdas_radmon_base.tar} diff --git a/ush/syndat_getjtbul.sh b/ush/syndat_getjtbul.sh index c17067ff72..c1689c68be 100755 --- a/ush/syndat_getjtbul.sh +++ b/ush/syndat_getjtbul.sh @@ -22,10 +22,6 @@ # TANK_TROPCY - path to home directory containing tropical cyclone record # data base -# Imported variables that can be passed in: -# jlogfile - path to job log file (skipped over by this script if not -# passed in) - source "$HOMEgfs/ush/preamble.sh" EXECSYND=${EXECSYND:-${HOMESYND}/exec} From 4b01d8eeca26c3b3d843a4b1e7b1618f281de68f Mon Sep 17 00:00:00 2001 From: David Huber Date: Fri, 9 Feb 2024 10:44:30 -0600 Subject: [PATCH 22/53] Revert Hercules modules to SS/1.5.1. --- modulefiles/module_base.hercules.lua | 5 ++-- modulefiles/module_gwci.hercules.lua | 2 +- modulefiles/module_gwsetup.hercules.lua | 4 +-- parm/config/gfs/config.base.emc.dyn | 7 ++++- sorc/gsi_enkf.fd | 2 +- versions/build.hercules.ver | 31 ++++++++++++++++++++-- versions/run.hercules.ver | 34 +++++++++++++++++++++++-- 7 files changed, 74 insertions(+), 11 deletions(-) diff --git a/modulefiles/module_base.hercules.lua b/modulefiles/module_base.hercules.lua index 1d65ac02c5..5b9a602544 100644 --- a/modulefiles/module_base.hercules.lua +++ b/modulefiles/module_base.hercules.lua @@ -37,8 +37,9 @@ load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) -load(pathJoin("met", (os.getenv("met_ver") or "None"))) -load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) +-- MET/METplus is not yet enabled on Hercules +--load(pathJoin("met", (os.getenv("met_ver") or "None"))) +--load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_gwci.hercules.lua b/modulefiles/module_gwci.hercules.lua index 179bbef114..9c60aed467 100644 --- a/modulefiles/module_gwci.hercules.lua +++ b/modulefiles/module_gwci.hercules.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow ci scripts on Hercules ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.9.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0"))) diff --git a/modulefiles/module_gwsetup.hercules.lua b/modulefiles/module_gwsetup.hercules.lua index 795b295b30..673928605c 100644 --- a/modulefiles/module_gwsetup.hercules.lua +++ b/modulefiles/module_gwsetup.hercules.lua @@ -5,10 +5,10 @@ Load environment to run GFS workflow ci scripts on Hercules load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.5")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" -local python_ver=os.getenv("python_ver") or "3.11.6" +local python_ver=os.getenv("python_ver") or "3.10.8" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index 3ac98c3963..2ce4d937c3 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -382,7 +382,12 @@ export netcdf_diag=".true." export binary_diag=".false." # Verification options -export DO_METP="NO" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack +# MET/METplus is not yet supported on Hercules +if [[ "${machine}" == "HERCULES" ]]; then + export DO_METP="NO" +else + export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack +fi export DO_FIT2OBS="YES" # Run fit to observations package # Archiving options diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index 339bf16c63..6dd0413158 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit 339bf16c6344500b44deccc338273ad233d5212b +Subproject commit 6dd0413158d68da5b1d8d5053ba63513bf75334b diff --git a/versions/build.hercules.ver b/versions/build.hercules.ver index 40c6aeb054..38c91670a8 100644 --- a/versions/build.hercules.ver +++ b/versions/build.hercules.ver @@ -1,4 +1,31 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 -export spack_env=gsi-addon-env -source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_env=gsi-addon +#source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_stack_ver=1.5.1 + +export cmake_ver=3.23.1 + +export jasper_ver=2.0.32 +export libpng_ver=1.6.37 +export zlib_ver=1.2.13 +export esmf_ver=8.5.0 +export fms_ver=2023.02.01 + +export hdf5_ver=1.14.0 +export netcdf_c_ver=4.9.2 +export netcdf_fortran_ver=4.6.0 + +export bacio_ver=2.4.1 +export nemsio_ver=2.5.4 +export sigio_ver=2.3.2 +export w3emc_ver=2.10.0 +export bufr_ver=11.7.0 +export g2_ver=3.4.5 +export sp_ver=2.3.3 +export ip_ver=4.3.0 +export gsi_ncdiag_ver=1.1.2 +export g2tmpl_ver=1.10.2 +export crtm_ver=2.4.0 +export wgrib2_ver=2.0.8 +export grib_util_ver=1.3.0 diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index e9d2c40ec2..f53d0c7280 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -1,9 +1,39 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export intel_mkl_ver=2023.1.0 -export spack_env=gsi-addon-env +export spack_env=gsi-addon export ncl_ver=6.6.2 export perl_ver=5.36.0 -source "${HOMEgfs:-}/versions/run.spack.ver" +#source "${HOMEgfs:-}/versions/run.spack.ver" +export spack_stack_ver=1.5.1 +export python_ver=3.10.8 + +export jasper_ver=2.0.32 +export libpng_ver=1.6.37 +export cdo_ver=2.2.0 +export nco_ver=5.0.6 + +export hdf5_ver=1.14.0 +export netcdf_c_ver=4.9.2 +export netcdf_fortran_ver=4.6.0 + +export bufr_ver=11.7.0 +export gsi_ncdiag_ver=1.1.2 +export g2tmpl_ver=1.10.2 +export crtm_ver=2.4.0 +export wgrib2_ver=3.1.1 +export grib_util_ver=1.3.0 +export prod_util_ver=1.2.2 +export py_netcdf4_ver=1.5.8 +export py_pyyaml_ver=5.4.1 +export py_jinja2_ver=3.1.2 +export py_pandas_ver=1.5.3 +export py_python_dateutil_ver=2.8.2 + +export obsproc_run_ver=1.1.2 +export prepobs_run_ver=1.0.1 + +export ens_tracker_ver=feature-GFSv17_com_reorg +export fit2obs_ver=1.0.0 From b972f66fc924790c48f38d395e7141fa78ef9d90 Mon Sep 17 00:00:00 2001 From: David Huber Date: Fri, 9 Feb 2024 10:47:00 -0600 Subject: [PATCH 23/53] Fix SS versions for CI modules. --- modulefiles/module_gwci.hera.lua | 2 +- modulefiles/module_gwci.orion.lua | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modulefiles/module_gwci.hera.lua b/modulefiles/module_gwci.hera.lua index bcd759b524..3d4c413a44 100644 --- a/modulefiles/module_gwci.hera.lua +++ b/modulefiles/module_gwci.hera.lua @@ -8,7 +8,7 @@ load(pathJoin("stack-intel", os.getenv("2021.5.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) load(pathJoin("netcdf-c", os.getenv("4.9.2"))) -load(pathJoin("netcdf-fortran", os.getenv("4.6.0"))) +load(pathJoin("netcdf-fortran", os.getenv("4.6.1"))) load(pathJoin("nccmp","1.9.0.1")) load(pathJoin("wgrib2", "2.0.8")) diff --git a/modulefiles/module_gwci.orion.lua b/modulefiles/module_gwci.orion.lua index 565197fbe4..cef7acf308 100644 --- a/modulefiles/module_gwci.orion.lua +++ b/modulefiles/module_gwci.orion.lua @@ -8,7 +8,7 @@ load(pathJoin("stack-intel", os.getenv("2022.0.2"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.5.1"))) load(pathJoin("netcdf-c", os.getenv("4.9.2"))) -load(pathJoin("netcdf-fortran", os.getenv("4.6.0"))) +load(pathJoin("netcdf-fortran", os.getenv("4.6.1"))) load(pathJoin("nccmp","1.9.0.1")) load(pathJoin("wgrib2", "2.0.8")) From 40f2cf6cd70ac94e01babc96982f37ae1b0c7e79 Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Tue, 13 Feb 2024 10:18:53 -0700 Subject: [PATCH 24/53] Implemented ush/detect_machine.sh for host determination and removed redundant checks for expected file paths. --- ush/load_fv3gfs_modules.sh | 31 +++++++++++++------------------ ush/load_ufsda_modules.sh | 33 ++++++++++++++++----------------- 2 files changed, 29 insertions(+), 35 deletions(-) diff --git a/ush/load_fv3gfs_modules.sh b/ush/load_fv3gfs_modules.sh index 48885c62e4..8e400f38cf 100755 --- a/ush/load_fv3gfs_modules.sh +++ b/ush/load_fv3gfs_modules.sh @@ -10,6 +10,7 @@ fi ulimit_s=$( ulimit -S -s ) # Find module command and purge: +source "${HOMEgfs}/ush/detect_machine.sh" source "${HOMEgfs}/ush/module-setup.sh" # Source versions file for runtime @@ -18,35 +19,29 @@ source "${HOMEgfs}/versions/run.ver" # Load our modules: module use "${HOMEgfs}/modulefiles" -if [[ -d /lfs/f1 ]]; then +if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then # We are on WCOSS2 (Cactus or Dogwood) module load module_base.wcoss2 -elif [[ -d /mnt/lfs1 ]] ; then +elif [[ "${MACHINE_ID}" == "jet" ]] ; then # We are on NOAA Jet module load module_base.jet -elif [[ -d /scratch1 ]] ; then +elif [[ "${MACHINE_ID}" == "hera" ]] ; then # We are on NOAA Hera module load module_base.hera -elif [[ -d /work ]] ; then - # We are on MSU Orion or Hercules - if [[ -d /apps/other ]] ; then - # Hercules - module load module_base.hercules - else - # Orion - module load module_base.orion - fi -elif [[ -d /glade ]] ; then - # We are on NCAR Yellowstone - module load module_base.cheyenne -elif [[ -d /lustre && -d /ncrc ]] ; then +elif [[ "${MACHINE_ID}" == "orion" ]] ; then + # We are on MSU Orion + module load module_base.orion +elif [[ "${MACHINE_ID}" == "hercules" ]] ; then + # We are on MSU Hercules + module load module_base.hercules +elif [[ "${MACHINE_ID}" == "gaea" ]] ; then # We are on GAEA. module load module_base.gaea -elif [[ -d /data/prod ]] ; then +elif [[ "${MACHINE_ID}" == "s4" ]] ; then # We are on SSEC S4 module load module_base.s4 else - echo WARNING: UNKNOWN PLATFORM + echo WARNING: UNKNOWN PLATFORM # TODO: Should an exception be raised here? fi module list diff --git a/ush/load_ufsda_modules.sh b/ush/load_ufsda_modules.sh index f15ae5666c..c7526ce307 100755 --- a/ush/load_ufsda_modules.sh +++ b/ush/load_ufsda_modules.sh @@ -27,43 +27,42 @@ fi ulimit_s=$( ulimit -S -s ) # Find module command and purge: +source "${HOMEgfs}/ush/detect_machine.sh" source "${HOMEgfs}/ush/module-setup.sh" # Load our modules: module use "${HOMEgfs}/sorc/gdas.cd/modulefiles" -if [[ -d /lfs/f1 ]]; then +if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then # We are on WCOSS2 (Cactus or Dogwood) echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ -d /lfs3 ]] ; then +elif [[ "${MACHINE_ID}" == "jet" ]] ; then # We are on NOAA Jet echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ -d /scratch1 ]] ; then +elif [[ "${MACHINE_ID}" == "hera" ]] ; then # We are on NOAA Hera module load "${MODS}/hera" # set NETCDF variable based on ncdump location NETCDF=$( which ncdump ) export NETCDF -elif [[ -d /work ]] ; then - # We are on MSU Orion or Hercules - if [[ -d /apps/other ]] ; then - # Hercules - module load "${MODS}/hercules" - else - # Orion - module load "${MODS}/orion" - fi +elif [[ "${MACHINE_ID}" == "orion" ]] ; then + # We are on MSU Orion + module load "${MODS}/orion" # set NETCDF variable based on ncdump location ncdump=$( which ncdump ) NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) export NETCDF -elif [[ -d /glade ]] ; then - # We are on NCAR Yellowstone - echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ -d /lustre && -d /ncrc ]] ; then +elif [[ "${MACHINE_ID}" == "hercules" ]] ; then + # We are on MSU Hercules + module load "${MODS}/hercules" + # set NETCDF variable based on ncdump location + ncdump=$( which ncdump ) + NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) + export NETCDF +elif [[ "${MACHINE_ID}" == "gaea" ]] ; then # We are on GAEA. echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ -d /data/prod ]] ; then +elif [[ "${MACHINE_ID}" == "s4" ]] ; then # We are on SSEC S4 echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM else From e4bc674cf3b2df10e0b0dfd50a8ecb0f4f7825d8 Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Wed, 14 Feb 2024 08:03:45 -0700 Subject: [PATCH 25/53] Corrected based on reviewer review. --- ush/minmon_xtrct_gnorms.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/minmon_xtrct_gnorms.pl b/ush/minmon_xtrct_gnorms.pl index 997ee60ff3..ac83c08cd3 100755 --- a/ush/minmon_xtrct_gnorms.pl +++ b/ush/minmon_xtrct_gnorms.pl @@ -185,7 +185,7 @@ sub updateGnormData { # #--------------------------------------------------------------------------- -if ($#ARGV != 4 ) { +if ($#ARGV != 3 ) { print "usage: minmon_xtrct_gnorms.pl SUFFIX pdy cyc infile \n"; exit; } From 73bc76bfd47f2cff54df55e15d9ed8969683367d Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Wed, 14 Feb 2024 09:27:37 -0700 Subject: [PATCH 26/53] Updates based on user request. --- ush/radmon_verf_angle.sh | 1 - ush/radmon_verf_bcoef.sh | 1 - ush/radmon_verf_bcor.sh | 1 - 3 files changed, 3 deletions(-) diff --git a/ush/radmon_verf_angle.sh b/ush/radmon_verf_angle.sh index f68d7c88cc..1066627787 100755 --- a/ush/radmon_verf_angle.sh +++ b/ush/radmon_verf_angle.sh @@ -83,7 +83,6 @@ which prep_step which startmsg # File names -export pgmout=${pgmout:-${jlogfile}} touch "${pgmout}" # Other variables diff --git a/ush/radmon_verf_bcoef.sh b/ush/radmon_verf_bcoef.sh index ab1058711e..b6fd82dff2 100755 --- a/ush/radmon_verf_bcoef.sh +++ b/ush/radmon_verf_bcoef.sh @@ -69,7 +69,6 @@ fi echo " RADMON_NETCDF, netcdf_boolean = ${RADMON_NETCDF}, ${netcdf_boolean}" # File names -pgmout=${pgmout:-${jlogfile}} touch "${pgmout}" # Other variables diff --git a/ush/radmon_verf_bcor.sh b/ush/radmon_verf_bcor.sh index f1f97c247e..7aec48e2b3 100755 --- a/ush/radmon_verf_bcor.sh +++ b/ush/radmon_verf_bcor.sh @@ -65,7 +65,6 @@ source "${HOMEgfs}/ush/preamble.sh" #################################################################### # File names -pgmout=${pgmout:-${jlogfile}} touch "${pgmout}" # Other variables From 8f5900265a31e894060bbe9c89b262f4df0b1760 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 14 Feb 2024 18:30:23 +0000 Subject: [PATCH 27/53] Update GSI hashes. --- sorc/gsi_enkf.fd | 2 +- sorc/gsi_monitor.fd | 2 +- sorc/gsi_utils.fd | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sorc/gsi_enkf.fd b/sorc/gsi_enkf.fd index 6dd0413158..74ac594211 160000 --- a/sorc/gsi_enkf.fd +++ b/sorc/gsi_enkf.fd @@ -1 +1 @@ -Subproject commit 6dd0413158d68da5b1d8d5053ba63513bf75334b +Subproject commit 74ac5942118d2a83ca84d3a629ec3aaffdb36fc5 diff --git a/sorc/gsi_monitor.fd b/sorc/gsi_monitor.fd index ae256c0d69..fb39e83880 160000 --- a/sorc/gsi_monitor.fd +++ b/sorc/gsi_monitor.fd @@ -1 +1 @@ -Subproject commit ae256c0d69df3232ee9dd3e81b176bf2c3cda312 +Subproject commit fb39e83880d44d433bed9af856bc5178bf63d64c diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 5a506f14bf..4c99fb56ab 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 5a506f14bfd19c37a31a50dac1891e45b3ddc7ec +Subproject commit 4c99fb56abc6900be86a7deb30582f9dd145fc18 From 2b160f8470bed16c513ca4a5665e2b6d4448c50e Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 14 Feb 2024 18:31:28 +0000 Subject: [PATCH 28/53] Reenable METplus jobs on Hercules. --- parm/config/gfs/config.base.emc.dyn | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index d3e28eb477..250ce03a48 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -377,11 +377,7 @@ export binary_diag=".false." # Verification options # MET/METplus is not yet supported on Hercules -if [[ "${machine}" == "HERCULES" ]]; then - export DO_METP="NO" -else - export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack -fi +export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack export DO_FIT2OBS="YES" # Run fit to observations package export DO_VRFY_OCEANDA="NO" # Run SOCA Ocean DA verification tasks From 4568653a67aa37c902379db628fb10f69fe7190f Mon Sep 17 00:00:00 2001 From: David Huber Date: Wed, 14 Feb 2024 14:22:13 -0600 Subject: [PATCH 29/53] Reupgrade Hercules to SS/1.6.0 --- modulefiles/module_base.hercules.lua | 5 ++-- modulefiles/module_gwci.hercules.lua | 2 +- modulefiles/module_gwsetup.hercules.lua | 4 +-- versions/build.hercules.ver | 29 +-------------------- versions/run.hercules.ver | 34 ++----------------------- 5 files changed, 8 insertions(+), 66 deletions(-) diff --git a/modulefiles/module_base.hercules.lua b/modulefiles/module_base.hercules.lua index 5b9a602544..1d65ac02c5 100644 --- a/modulefiles/module_base.hercules.lua +++ b/modulefiles/module_base.hercules.lua @@ -37,9 +37,8 @@ load(pathJoin("py-pyyaml", (os.getenv("py_pyyaml_ver") or "None"))) load(pathJoin("py-jinja2", (os.getenv("py_jinja2_ver") or "None"))) load(pathJoin("py-pandas", (os.getenv("py_pandas_ver") or "None"))) load(pathJoin("py-python-dateutil", (os.getenv("py_python_dateutil_ver") or "None"))) --- MET/METplus is not yet enabled on Hercules ---load(pathJoin("met", (os.getenv("met_ver") or "None"))) ---load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) +load(pathJoin("met", (os.getenv("met_ver") or "None"))) +load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_gwci.hercules.lua b/modulefiles/module_gwci.hercules.lua index 9c60aed467..179bbef114 100644 --- a/modulefiles/module_gwci.hercules.lua +++ b/modulefiles/module_gwci.hercules.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow ci scripts on Hercules ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") load(pathJoin("stack-intel", os.getenv("2021.9.0"))) load(pathJoin("stack-intel-oneapi-mpi", os.getenv("2021.9.0"))) diff --git a/modulefiles/module_gwsetup.hercules.lua b/modulefiles/module_gwsetup.hercules.lua index 673928605c..795b295b30 100644 --- a/modulefiles/module_gwsetup.hercules.lua +++ b/modulefiles/module_gwsetup.hercules.lua @@ -5,10 +5,10 @@ Load environment to run GFS workflow ci scripts on Hercules load(pathJoin("contrib","0.1")) load(pathJoin("rocoto","1.3.5")) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.1/envs/gsi-addon/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core") local stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" -local python_ver=os.getenv("python_ver") or "3.10.8" +local python_ver=os.getenv("python_ver") or "3.11.6" load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("python", python_ver)) diff --git a/versions/build.hercules.ver b/versions/build.hercules.ver index 38c91670a8..da6c390209 100644 --- a/versions/build.hercules.ver +++ b/versions/build.hercules.ver @@ -1,31 +1,4 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export spack_env=gsi-addon -#source "${HOMEgfs:-}/versions/build.spack.ver" -export spack_stack_ver=1.5.1 - -export cmake_ver=3.23.1 - -export jasper_ver=2.0.32 -export libpng_ver=1.6.37 -export zlib_ver=1.2.13 -export esmf_ver=8.5.0 -export fms_ver=2023.02.01 - -export hdf5_ver=1.14.0 -export netcdf_c_ver=4.9.2 -export netcdf_fortran_ver=4.6.0 - -export bacio_ver=2.4.1 -export nemsio_ver=2.5.4 -export sigio_ver=2.3.2 -export w3emc_ver=2.10.0 -export bufr_ver=11.7.0 -export g2_ver=3.4.5 -export sp_ver=2.3.3 -export ip_ver=4.3.0 -export gsi_ncdiag_ver=1.1.2 -export g2tmpl_ver=1.10.2 -export crtm_ver=2.4.0 -export wgrib2_ver=2.0.8 -export grib_util_ver=1.3.0 +source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index f53d0c7280..e9d2c40ec2 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -1,39 +1,9 @@ export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export intel_mkl_ver=2023.1.0 -export spack_env=gsi-addon +export spack_env=gsi-addon-env export ncl_ver=6.6.2 export perl_ver=5.36.0 -#source "${HOMEgfs:-}/versions/run.spack.ver" -export spack_stack_ver=1.5.1 -export python_ver=3.10.8 - -export jasper_ver=2.0.32 -export libpng_ver=1.6.37 -export cdo_ver=2.2.0 -export nco_ver=5.0.6 - -export hdf5_ver=1.14.0 -export netcdf_c_ver=4.9.2 -export netcdf_fortran_ver=4.6.0 - -export bufr_ver=11.7.0 -export gsi_ncdiag_ver=1.1.2 -export g2tmpl_ver=1.10.2 -export crtm_ver=2.4.0 -export wgrib2_ver=3.1.1 -export grib_util_ver=1.3.0 -export prod_util_ver=1.2.2 -export py_netcdf4_ver=1.5.8 -export py_pyyaml_ver=5.4.1 -export py_jinja2_ver=3.1.2 -export py_pandas_ver=1.5.3 -export py_python_dateutil_ver=2.8.2 - -export obsproc_run_ver=1.1.2 -export prepobs_run_ver=1.0.1 - -export ens_tracker_ver=feature-GFSv17_com_reorg -export fit2obs_ver=1.0.0 +source "${HOMEgfs:-}/versions/run.spack.ver" From 49392dd47ff84b6586052aeae6879d7d8050b746 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 14 Feb 2024 20:29:41 +0000 Subject: [PATCH 30/53] Updated GSI-Utils hash to head of develop. --- sorc/gsi_utils.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gsi_utils.fd b/sorc/gsi_utils.fd index 4c99fb56ab..55abe58825 160000 --- a/sorc/gsi_utils.fd +++ b/sorc/gsi_utils.fd @@ -1 +1 @@ -Subproject commit 4c99fb56abc6900be86a7deb30582f9dd145fc18 +Subproject commit 55abe588252ec6f39047d54a14727cf59f7f6688 From 3080a34253e8e24105bf2be72b6a872b1c072935 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Wed, 14 Feb 2024 20:52:34 +0000 Subject: [PATCH 31/53] Fixed xarray version for SS/1.6.0. --- versions/run.spack.ver | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/run.spack.ver b/versions/run.spack.ver index ef2dff0b80..c00b7483cd 100644 --- a/versions/run.spack.ver +++ b/versions/run.spack.ver @@ -25,7 +25,7 @@ export py_python_dateutil_ver=2.8.2 export met_ver=9.1.3 export metplus_ver=3.1.1 -export py_xarray_ver=2022.3.0 +export py_xarray_ver=2023.7.0 export obsproc_run_ver=1.1.2 export prepobs_run_ver=1.0.1 From 0ce8c0dbc13227884fef1c637e93616a28c68d34 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Thu, 15 Feb 2024 14:55:48 +0000 Subject: [PATCH 32/53] Fix git version in Hera's gwsetup module. --- modulefiles/module_gwsetup.hera.lua | 2 +- parm/config/gfs/config.base.emc.dyn | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/modulefiles/module_gwsetup.hera.lua b/modulefiles/module_gwsetup.hera.lua index 6531bbe09e..3e8bf2d7f8 100644 --- a/modulefiles/module_gwsetup.hera.lua +++ b/modulefiles/module_gwsetup.hera.lua @@ -14,7 +14,7 @@ load(pathJoin("python", python_ver)) load("py-jinja2") load("py-pyyaml") load("py-numpy") -local git_ver=os.getenv("git_ver") or "2.40.0" +local git_ver=os.getenv("git_ver") or "2.18.0" load(pathJoin("git", git_ver)) whatis("Description: GFS run setup environment") diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index 79b6a6455d..dc04d1635a 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -376,7 +376,6 @@ export netcdf_diag=".true." export binary_diag=".false." # Verification options -# MET/METplus is not yet supported on Hercules export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack export DO_FIT2OBS="YES" # Run fit to observations package export DO_VRFY_OCEANDA="NO" # Run SOCA Ocean DA verification tasks From ef0723503c72f295de93521c7102c43e75c47417 Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Thu, 15 Feb 2024 16:29:32 +0000 Subject: [PATCH 33/53] Revert UFS hash. --- sorc/ufs_model.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ufs_model.fd b/sorc/ufs_model.fd index 60afb2c1a6..a837cfcb0c 160000 --- a/sorc/ufs_model.fd +++ b/sorc/ufs_model.fd @@ -1 +1 @@ -Subproject commit 60afb2c1a67d7621f21b98d0a9795d26fc395afc +Subproject commit a837cfcb0c79803e13a1375a362d3d0b14b62320 From 777d97d3a1c9f5ec5e8af3ca40a41224ec7099a1 Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 15 Feb 2024 12:34:59 -0600 Subject: [PATCH 34/53] Fixed Orion cdo version. --- versions/run.orion.ver | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/versions/run.orion.ver b/versions/run.orion.ver index 835ac99d34..cad33178de 100644 --- a/versions/run.orion.ver +++ b/versions/run.orion.ver @@ -5,8 +5,7 @@ export spack_env=gsi-addon-env export ncl_ver=6.6.2 export gempak_ver=7.5.1 -#For metplus jobs, not currently working with spack-stack -#export met_ver=9.1.3 -#export metplus_ver=3.1.1 - source "${HOMEgfs:-}/versions/run.spack.ver" + +#cdo is older on Orion +export cdo_ver=2.0.5 From 2415b7b4f3e6c376aca27707510001141cc9dd92 Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 15 Feb 2024 19:21:17 +0000 Subject: [PATCH 35/53] Load default rocoto on Jet. --- modulefiles/module_gwsetup.jet.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modulefiles/module_gwsetup.jet.lua b/modulefiles/module_gwsetup.jet.lua index 8dcab67d2b..72c40469e4 100644 --- a/modulefiles/module_gwsetup.jet.lua +++ b/modulefiles/module_gwsetup.jet.lua @@ -2,7 +2,7 @@ help([[ Load environment to run GFS workflow setup scripts on Jet ]]) -load(pathJoin("rocoto", "1.3.3")) +load(pathJoin("rocoto")) prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core") From ed25bbd0b26a893d32ce4a10b368dec2bb722424 Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Fri, 16 Feb 2024 09:33:59 -0700 Subject: [PATCH 36/53] Linter corrections. --- ush/load_ufsda_modules.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ush/load_ufsda_modules.sh b/ush/load_ufsda_modules.sh index c7526ce307..5c30f8ed4b 100755 --- a/ush/load_ufsda_modules.sh +++ b/ush/load_ufsda_modules.sh @@ -43,20 +43,20 @@ elif [[ "${MACHINE_ID}" == "hera" ]] ; then # We are on NOAA Hera module load "${MODS}/hera" # set NETCDF variable based on ncdump location - NETCDF=$( which ncdump ) + NETCDF=$( command -v ncdump) export NETCDF elif [[ "${MACHINE_ID}" == "orion" ]] ; then # We are on MSU Orion module load "${MODS}/orion" # set NETCDF variable based on ncdump location - ncdump=$( which ncdump ) + ncdump=$( command -v ncdump) NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) export NETCDF elif [[ "${MACHINE_ID}" == "hercules" ]] ; then # We are on MSU Hercules module load "${MODS}/hercules" # set NETCDF variable based on ncdump location - ncdump=$( which ncdump ) + ncdump=$( command -v ncdump ) NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) export NETCDF elif [[ "${MACHINE_ID}" == "gaea" ]] ; then From 4624ce21c99ab303afa10c1dd8ddcce7b6f715ca Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Fri, 16 Feb 2024 10:52:11 -0700 Subject: [PATCH 37/53] Updates requested by reviewer; testing -- DO NOT REVIEW. --- ush/load_fv3gfs_modules.sh | 59 ++++++++++++++++----------- ush/load_ufsda_modules.sh | 82 ++++++++++++++++++++++---------------- 2 files changed, 83 insertions(+), 58 deletions(-) diff --git a/ush/load_fv3gfs_modules.sh b/ush/load_fv3gfs_modules.sh index 8e400f38cf..b09f1bf166 100755 --- a/ush/load_fv3gfs_modules.sh +++ b/ush/load_fv3gfs_modules.sh @@ -19,30 +19,41 @@ source "${HOMEgfs}/versions/run.ver" # Load our modules: module use "${HOMEgfs}/modulefiles" -if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then - # We are on WCOSS2 (Cactus or Dogwood) - module load module_base.wcoss2 -elif [[ "${MACHINE_ID}" == "jet" ]] ; then - # We are on NOAA Jet - module load module_base.jet -elif [[ "${MACHINE_ID}" == "hera" ]] ; then - # We are on NOAA Hera - module load module_base.hera -elif [[ "${MACHINE_ID}" == "orion" ]] ; then - # We are on MSU Orion - module load module_base.orion -elif [[ "${MACHINE_ID}" == "hercules" ]] ; then - # We are on MSU Hercules - module load module_base.hercules -elif [[ "${MACHINE_ID}" == "gaea" ]] ; then - # We are on GAEA. - module load module_base.gaea -elif [[ "${MACHINE_ID}" == "s4" ]] ; then - # We are on SSEC S4 - module load module_base.s4 -else - echo WARNING: UNKNOWN PLATFORM # TODO: Should an exception be raised here? -fi +# TODO: Testing. + +#if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then +# # We are on WCOSS2 (Cactus or Dogwood) +# module load module_base.wcoss2 +#elif [[ "${MACHINE_ID}" == "jet" ]] ; then +# # We are on NOAA Jet +# module load module_base.jet +#elif [[ "${MACHINE_ID}" == "hera" ]] ; then +# # We are on NOAA Hera +# module load module_base.hera +#elif [[ "${MACHINE_ID}" == "orion" ]] ; then +# # We are on MSU Orion +# module load module_base.orion +#elif [[ "${MACHINE_ID}" == "hercules" ]] ; then +# # We are on MSU Hercules +# module load module_base.hercules +#elif [[ "${MACHINE_ID}" == "gaea" ]] ; then +# # We are on GAEA. +# module load module_base.gaea +#elif [[ "${MACHINE_ID}" == "s4" ]] ; then +# # We are on SSEC S4 +# module load module_base.s4 +#else +# echo WARNING: UNKNOWN PLATFORM # TODO: Should an exception be raised here? +#fi + +case "${MACHINE_ID}" in + "wcoss2" | "hera" | "orion" | "hercules" | "gaea" | "jet" | "s4") + module load "module_base.${MACHINE_ID}" + ;; + *) + echo "WARNING: UNKNOWN PLATFORM" + ;; +esac module list diff --git a/ush/load_ufsda_modules.sh b/ush/load_ufsda_modules.sh index 5c30f8ed4b..d8333083f4 100755 --- a/ush/load_ufsda_modules.sh +++ b/ush/load_ufsda_modules.sh @@ -33,41 +33,55 @@ source "${HOMEgfs}/ush/module-setup.sh" # Load our modules: module use "${HOMEgfs}/sorc/gdas.cd/modulefiles" -if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then - # We are on WCOSS2 (Cactus or Dogwood) - echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ "${MACHINE_ID}" == "jet" ]] ; then - # We are on NOAA Jet - echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ "${MACHINE_ID}" == "hera" ]] ; then - # We are on NOAA Hera - module load "${MODS}/hera" - # set NETCDF variable based on ncdump location - NETCDF=$( command -v ncdump) - export NETCDF -elif [[ "${MACHINE_ID}" == "orion" ]] ; then - # We are on MSU Orion - module load "${MODS}/orion" - # set NETCDF variable based on ncdump location - ncdump=$( command -v ncdump) - NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) - export NETCDF -elif [[ "${MACHINE_ID}" == "hercules" ]] ; then - # We are on MSU Hercules - module load "${MODS}/hercules" - # set NETCDF variable based on ncdump location - ncdump=$( command -v ncdump ) - NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) - export NETCDF -elif [[ "${MACHINE_ID}" == "gaea" ]] ; then +#if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then +# # We are on WCOSS2 (Cactus or Dogwood) +# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM +#elif [[ "${MACHINE_ID}" == "jet" ]] ; then +# # We are on NOAA Jet +# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM +#elif [[ "${MACHINE_ID}" == "hera" ]] ; then +# # We are on NOAA Hera +# module load "${MODS}/hera" +# # set NETCDF variable based on ncdump location +# NETCDF=$( command -v ncdump) +# export NETCDF +#elif [[ "${MACHINE_ID}" == "orion" ]] ; then +# # We are on MSU Orion +# module load "${MODS}/orion" +# # set NETCDF variable based on ncdump location +# ncdump=$( command -v ncdump) +# NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) +# export NETCDF +#elif [[ "${MACHINE_ID}" == "hercules" ]] ; then +# # We are on MSU Hercules +# module load "${MODS}/hercules" +# # set NETCDF variable based on ncdump location +# ncdump=$( command -v ncdump ) +# NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) +# export NETCDF +#elif [[ "${MACHINE_ID}" == "gaea" ]] ; then # We are on GAEA. - echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -elif [[ "${MACHINE_ID}" == "s4" ]] ; then - # We are on SSEC S4 - echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -else - echo WARNING: UNKNOWN PLATFORM -fi +# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM +#elif [[ "${MACHINE_ID}" == "s4" ]] ; then +# # We are on SSEC S4 +# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM +#else +# echo WARNING: UNKNOWN PLATFORM +#fi + +case "${MACHINE_ID}" in + ("hera" | "orion" | "hercules") + module load "${MODS}/${MACHINE_ID}" + NETCDF=$( command -v ncdump ) + export NETCDF + ;; + ("wcoss2" | "acorn" | "jet" | "gaea" | "s4") + echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM + ;; + *) + echo "WARNING: UNKNOWN PLATFORM" + ;; +esac module list pip list From 8e4f94d13d32849b2862a9d59aa070f4103c61ae Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Fri, 16 Feb 2024 11:04:41 -0700 Subject: [PATCH 38/53] Updates requested by reviewer Rahul Mahajan. --- ush/load_fv3gfs_modules.sh | 27 --------------------------- ush/load_ufsda_modules.sh | 36 ------------------------------------ 2 files changed, 63 deletions(-) diff --git a/ush/load_fv3gfs_modules.sh b/ush/load_fv3gfs_modules.sh index b09f1bf166..ae0e381db4 100755 --- a/ush/load_fv3gfs_modules.sh +++ b/ush/load_fv3gfs_modules.sh @@ -19,33 +19,6 @@ source "${HOMEgfs}/versions/run.ver" # Load our modules: module use "${HOMEgfs}/modulefiles" -# TODO: Testing. - -#if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then -# # We are on WCOSS2 (Cactus or Dogwood) -# module load module_base.wcoss2 -#elif [[ "${MACHINE_ID}" == "jet" ]] ; then -# # We are on NOAA Jet -# module load module_base.jet -#elif [[ "${MACHINE_ID}" == "hera" ]] ; then -# # We are on NOAA Hera -# module load module_base.hera -#elif [[ "${MACHINE_ID}" == "orion" ]] ; then -# # We are on MSU Orion -# module load module_base.orion -#elif [[ "${MACHINE_ID}" == "hercules" ]] ; then -# # We are on MSU Hercules -# module load module_base.hercules -#elif [[ "${MACHINE_ID}" == "gaea" ]] ; then -# # We are on GAEA. -# module load module_base.gaea -#elif [[ "${MACHINE_ID}" == "s4" ]] ; then -# # We are on SSEC S4 -# module load module_base.s4 -#else -# echo WARNING: UNKNOWN PLATFORM # TODO: Should an exception be raised here? -#fi - case "${MACHINE_ID}" in "wcoss2" | "hera" | "orion" | "hercules" | "gaea" | "jet" | "s4") module load "module_base.${MACHINE_ID}" diff --git a/ush/load_ufsda_modules.sh b/ush/load_ufsda_modules.sh index d8333083f4..68547cc05b 100755 --- a/ush/load_ufsda_modules.sh +++ b/ush/load_ufsda_modules.sh @@ -33,42 +33,6 @@ source "${HOMEgfs}/ush/module-setup.sh" # Load our modules: module use "${HOMEgfs}/sorc/gdas.cd/modulefiles" -#if [[ "${MACHINE_ID}" == "wcoss2" || "${MACHINE_ID}" == "acorn" ]]; then -# # We are on WCOSS2 (Cactus or Dogwood) -# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -#elif [[ "${MACHINE_ID}" == "jet" ]] ; then -# # We are on NOAA Jet -# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -#elif [[ "${MACHINE_ID}" == "hera" ]] ; then -# # We are on NOAA Hera -# module load "${MODS}/hera" -# # set NETCDF variable based on ncdump location -# NETCDF=$( command -v ncdump) -# export NETCDF -#elif [[ "${MACHINE_ID}" == "orion" ]] ; then -# # We are on MSU Orion -# module load "${MODS}/orion" -# # set NETCDF variable based on ncdump location -# ncdump=$( command -v ncdump) -# NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) -# export NETCDF -#elif [[ "${MACHINE_ID}" == "hercules" ]] ; then -# # We are on MSU Hercules -# module load "${MODS}/hercules" -# # set NETCDF variable based on ncdump location -# ncdump=$( command -v ncdump ) -# NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) -# export NETCDF -#elif [[ "${MACHINE_ID}" == "gaea" ]] ; then - # We are on GAEA. -# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -#elif [[ "${MACHINE_ID}" == "s4" ]] ; then -# # We are on SSEC S4 -# echo WARNING: UFSDA NOT SUPPORTED ON THIS PLATFORM -#else -# echo WARNING: UNKNOWN PLATFORM -#fi - case "${MACHINE_ID}" in ("hera" | "orion" | "hercules") module load "${MODS}/${MACHINE_ID}" From 4529e8cf3736ffbacf615a27e99f4d1beec391aa Mon Sep 17 00:00:00 2001 From: henrywinterbottom-wxdev Date: Fri, 16 Feb 2024 11:12:01 -0700 Subject: [PATCH 39/53] Bug fix. --- ush/load_ufsda_modules.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ush/load_ufsda_modules.sh b/ush/load_ufsda_modules.sh index 68547cc05b..e8e72b8fbe 100755 --- a/ush/load_ufsda_modules.sh +++ b/ush/load_ufsda_modules.sh @@ -36,7 +36,8 @@ module use "${HOMEgfs}/sorc/gdas.cd/modulefiles" case "${MACHINE_ID}" in ("hera" | "orion" | "hercules") module load "${MODS}/${MACHINE_ID}" - NETCDF=$( command -v ncdump ) + ncdump=$( command -v ncdump ) + NETCDF=$( echo "${ncdump}" | cut -d " " -f 3 ) export NETCDF ;; ("wcoss2" | "acorn" | "jet" | "gaea" | "s4") From 48b34d0f388a398bb91f7c3b1e5f8338f4beb7b9 Mon Sep 17 00:00:00 2001 From: David Huber Date: Fri, 16 Feb 2024 20:56:55 +0000 Subject: [PATCH 40/53] Added verif-global support back to WCOSS2. --- modulefiles/module_base.wcoss2.lua | 3 +++ sorc/verif-global.fd | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/modulefiles/module_base.wcoss2.lua b/modulefiles/module_base.wcoss2.lua index 8db2e9a50a..43b21ccc25 100644 --- a/modulefiles/module_base.wcoss2.lua +++ b/modulefiles/module_base.wcoss2.lua @@ -30,6 +30,9 @@ load(pathJoin("g2tmpl", (os.getenv("g2tmpl_ver") or "None"))) load(pathJoin("ncdiag", (os.getenv("ncdiag_ver") or "None"))) load(pathJoin("crtm", (os.getenv("crtm_ver") or "None"))) load(pathJoin("wgrib2", (os.getenv("wgrib2_ver") or "None"))) + +prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304") +setenv("HPC_OPT", "/apps/ops/para/libs") load(pathJoin("met", (os.getenv("met_ver") or "None"))) load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) diff --git a/sorc/verif-global.fd b/sorc/verif-global.fd index 3dad0a6a72..3dcd1fdd90 160000 --- a/sorc/verif-global.fd +++ b/sorc/verif-global.fd @@ -1 +1 @@ -Subproject commit 3dad0a6a72e08f7636b7828ec95df9115ad55157 +Subproject commit 3dcd1fdd9056eb17717d484678c84e9490767936 From ae7eb194cbe2213e564807dd7bc03a28d493eff2 Mon Sep 17 00:00:00 2001 From: David Huber <69919478+DavidHuber-NOAA@users.noreply.github.com> Date: Fri, 16 Feb 2024 16:15:40 -0500 Subject: [PATCH 41/53] Fix whitespace in build_upp.sh. Co-authored-by: Rahul Mahajan --- sorc/build_upp.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/build_upp.sh b/sorc/build_upp.sh index 393d369dbf..5c4bf45a9f 100755 --- a/sorc/build_upp.sh +++ b/sorc/build_upp.sh @@ -10,7 +10,7 @@ while getopts ":dvj:" option; do case "${option}" in d) _opts+="-d ";; v) _opts+="-v ";; - j) export BUILD_JOBS="${OPTARG}"; echo success ;; + j) export BUILD_JOBS="${OPTARG}"; echo success ;; :) echo "[${BASH_SOURCE[0]}]: ${option} requires an argument" ;; From d81f07fbf53666a37ab01bd463152e10252869ae Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 07:41:38 -0600 Subject: [PATCH 42/53] Clean up build_upp.sh. -Corrected whitespace (tabs instead of spaces) -Removed debug print statement -Alphebetized flags --- sorc/build_upp.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sorc/build_upp.sh b/sorc/build_upp.sh index 5c4bf45a9f..8a2e1f6fcd 100755 --- a/sorc/build_upp.sh +++ b/sorc/build_upp.sh @@ -6,11 +6,11 @@ cd "${script_dir}" || exit 1 OPTIND=1 _opts="" -while getopts ":dvj:" option; do +while getopts ":dj:v" option; do case "${option}" in d) _opts+="-d ";; + j) export BUILD_JOBS="${OPTARG}" ;; v) _opts+="-v ";; - j) export BUILD_JOBS="${OPTARG}"; echo success ;; :) echo "[${BASH_SOURCE[0]}]: ${option} requires an argument" ;; From a812f88af3fc043d57494840e81a7527723858e4 Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 07:45:45 -0600 Subject: [PATCH 43/53] Update verif-global to latest WCOSS2 support. --- sorc/verif-global.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/verif-global.fd b/sorc/verif-global.fd index 3dcd1fdd90..bd1c8f62a1 160000 --- a/sorc/verif-global.fd +++ b/sorc/verif-global.fd @@ -1 +1 @@ -Subproject commit 3dcd1fdd9056eb17717d484678c84e9490767936 +Subproject commit bd1c8f62a1878051e34ff7c6f6a4dd290381f1ef From d7d28a6b65b84c8d821abd2c13d0c068bd5ad6d8 Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 07:53:15 -0600 Subject: [PATCH 44/53] Update comment about METplus support. --- parm/config/gfs/config.base.emc.dyn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index fd5e9ef78b..d3dd06be86 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -377,7 +377,7 @@ export netcdf_diag=".true." export binary_diag=".false." # Verification options -export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp; not supported with spack-stack +export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp export DO_FIT2OBS="YES" # Run fit to observations package export DO_VRFY_OCEANDA="NO" # Run SOCA Ocean DA verification tasks From fdc638ca1616b347912caec77e5abc2d3e6f18af Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 08:35:15 -0600 Subject: [PATCH 45/53] Move SS module path to version files. --- modulefiles/module_base.hera.lua | 5 ++--- modulefiles/module_base.hercules.lua | 9 ++------- modulefiles/module_base.jet.lua | 5 ++--- modulefiles/module_base.orion.lua | 5 ++--- modulefiles/module_base.s4.lua | 5 ++--- versions/build.hera.ver | 1 + versions/build.hercules.ver | 1 + versions/build.jet.ver | 1 + versions/build.orion.ver | 3 ++- versions/build.s4.ver | 2 +- versions/run.hera.ver | 1 + versions/run.hercules.ver | 2 +- versions/run.jet.ver | 1 + versions/run.orion.ver | 1 + versions/run.s4.ver | 2 +- 15 files changed, 21 insertions(+), 23 deletions(-) diff --git a/modulefiles/module_base.hera.lua b/modulefiles/module_base.hera.lua index f88409a7a9..ee6854d610 100644 --- a/modulefiles/module_base.hera.lua +++ b/modulefiles/module_base.hera.lua @@ -2,9 +2,8 @@ help([[ Load environment to run GFS on Hera ]]) -spack_stack_ver=(os.getenv("spack_stack_ver") or "None") -spack_env=(os.getenv("spack_env") or "None") -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-" .. spack_stack_ver .. "/envs/" .. spack_env .. "/install/modulefiles/Core") +local spack_mod_path=(os.getenv("spack_mod_path") or "None") +prepend_path("MODULEPATH", spack_mod_path) load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None"))) load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None"))) diff --git a/modulefiles/module_base.hercules.lua b/modulefiles/module_base.hercules.lua index 409a1d6f5a..5534437392 100644 --- a/modulefiles/module_base.hercules.lua +++ b/modulefiles/module_base.hercules.lua @@ -2,9 +2,8 @@ help([[ Load environment to run GFS on Hercules ]]) -spack_stack_ver=(os.getenv("spack_stack_ver") or "None") -spack_env=(os.getenv("spack_env") or "None") -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-" .. spack_stack_ver .. "/envs/" .. spack_env .. "/install/modulefiles/Core") +local spack_mod_path=(os.getenv("spack_mod_path") or "None") +prepend_path("MODULEPATH", spack_mod_path) load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None"))) load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None"))) @@ -12,10 +11,6 @@ load(pathJoin("intel-oneapi-mkl", (os.getenv("intel_mkl_ver") or "None"))) load(pathJoin("python", (os.getenv("python_ver") or "None"))) load(pathJoin("perl", (os.getenv("perl_ver") or "None"))) --- TODO load NCL once the SAs remove the 'depends_on' statements within it --- NCL is a static installation and does not depend on any libraries --- but as is will load, among others, the system netcdf-c/4.9.0 module ---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"))) diff --git a/modulefiles/module_base.jet.lua b/modulefiles/module_base.jet.lua index e6ff3136b6..55a1eb1c68 100644 --- a/modulefiles/module_base.jet.lua +++ b/modulefiles/module_base.jet.lua @@ -2,9 +2,8 @@ help([[ Load environment to run GFS on Jet ]]) -spack_stack_ver=(os.getenv("spack_stack_ver") or "None") -spack_env=(os.getenv("spack_env") or "None") -prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-" .. spack_stack_ver .. "/envs/" .. spack_env .. "/install/modulefiles/Core") +local spack_mod_path=(os.getenv("spack_mod_path") or "None") +prepend_path("MODULEPATH", spack_mod_path) load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None"))) load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None"))) diff --git a/modulefiles/module_base.orion.lua b/modulefiles/module_base.orion.lua index bad652a6f9..49b2c64f21 100644 --- a/modulefiles/module_base.orion.lua +++ b/modulefiles/module_base.orion.lua @@ -2,9 +2,8 @@ help([[ Load environment to run GFS on Orion ]]) -spack_stack_ver=(os.getenv("spack_stack_ver") or "None") -spack_env=(os.getenv("spack_env") or "None") -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-" .. spack_stack_ver .. "/envs/" .. spack_env .. "/install/modulefiles/Core") +local spack_mod_path=(os.getenv("spack_mod_path") or "None") +prepend_path("MODULEPATH", spack_mod_path) load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None"))) load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None"))) diff --git a/modulefiles/module_base.s4.lua b/modulefiles/module_base.s4.lua index 21c4a50c4c..d8dccc89ba 100644 --- a/modulefiles/module_base.s4.lua +++ b/modulefiles/module_base.s4.lua @@ -2,9 +2,8 @@ help([[ Load environment to run GFS on S4 ]]) -spack_stack_ver=(os.getenv("spack_stack_ver") or "None") -spack_env=(os.getenv("spack_env") or "None") -prepend_path("MODULEPATH", "/data/prod/jedi/spack-stack/spack-stack-" .. spack_stack_ver .. "/envs/" .. spack_env .. "/install/modulefiles/Core") +local spack_mod_path=(os.getenv("spack_mod_path") or "None") +prepend_path("MODULEPATH", spack_mod_path) load(pathJoin("stack-intel", (os.getenv("stack_intel_ver") or "None"))) load(pathJoin("stack-intel-oneapi-mpi", (os.getenv("stack_impi_ver") or "None"))) diff --git a/versions/build.hera.ver b/versions/build.hera.ver index 66ec8e4c6c..9f94cf257d 100644 --- a/versions/build.hera.ver +++ b/versions/build.hera.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev diff --git a/versions/build.hercules.ver b/versions/build.hercules.ver index da6c390209..2fba9e072d 100644 --- a/versions/build.hercules.ver +++ b/versions/build.hercules.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export spack_env=gsi-addon diff --git a/versions/build.jet.ver b/versions/build.jet.ver index 66ec8e4c6c..4444b0d295 100644 --- a/versions/build.jet.ver +++ b/versions/build.jet.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev diff --git a/versions/build.orion.ver b/versions/build.orion.ver index 33f271e93b..91ab50da36 100644 --- a/versions/build.orion.ver +++ b/versions/build.orion.ver @@ -1,4 +1,5 @@ -export stack_intel_ver=2021.5.0 +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" +export stack_intel_ver=2022.0.2 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/build.s4.ver b/versions/build.s4.ver index a75cb612f8..4b72cc5a4a 100644 --- a/versions/build.s4.ver +++ b/versions/build.s4.ver @@ -1,4 +1,4 @@ +export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 -export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" diff --git a/versions/run.hera.ver b/versions/run.hera.ver index 0895659307..60a3675299 100644 --- a/versions/run.hera.ver +++ b/versions/run.hera.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index e9d2c40ec2..34b75b2377 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -1,9 +1,9 @@ +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export intel_mkl_ver=2023.1.0 export spack_env=gsi-addon-env -export ncl_ver=6.6.2 export perl_ver=5.36.0 source "${HOMEgfs:-}/versions/run.spack.ver" diff --git a/versions/run.jet.ver b/versions/run.jet.ver index 5192188364..6379bd5e61 100644 --- a/versions/run.jet.ver +++ b/versions/run.jet.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev diff --git a/versions/run.orion.ver b/versions/run.orion.ver index cad33178de..3de968e06d 100644 --- a/versions/run.orion.ver +++ b/versions/run.orion.ver @@ -1,3 +1,4 @@ +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2022.0.2 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-env diff --git a/versions/run.s4.ver b/versions/run.s4.ver index 27a53db299..941d6e46e3 100644 --- a/versions/run.s4.ver +++ b/versions/run.s4.ver @@ -1,6 +1,6 @@ +export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 -export spack_env=gsi-addon-env export ncl_ver=6.4.0-precompiled From 3330cd7310bde8090b68720c225656074676d6b2 Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 09:06:19 -0600 Subject: [PATCH 46/53] Removed MET/METplus 'not available' comments --- modulefiles/module_base.hera.lua | 4 ---- modulefiles/module_base.orion.lua | 4 ---- 2 files changed, 8 deletions(-) diff --git a/modulefiles/module_base.hera.lua b/modulefiles/module_base.hera.lua index ee6854d610..8703100e76 100644 --- a/modulefiles/module_base.hera.lua +++ b/modulefiles/module_base.hera.lua @@ -38,10 +38,6 @@ load(pathJoin("met", (os.getenv("met_ver") or "None"))) load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) load(pathJoin("py-xarray", (os.getenv("py_xarray_ver") or "None"))) --- MET/METplus are not available for use with spack-stack, yet ---load(pathJoin("met", (os.getenv("met_ver") or "None"))) ---load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) - setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) diff --git a/modulefiles/module_base.orion.lua b/modulefiles/module_base.orion.lua index 49b2c64f21..4e2e24b82f 100644 --- a/modulefiles/module_base.orion.lua +++ b/modulefiles/module_base.orion.lua @@ -36,10 +36,6 @@ load(pathJoin("met", (os.getenv("met_ver") or "None"))) load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) load(pathJoin("py-xarray", (os.getenv("py_xarray_ver") or "None"))) --- MET/METplus are not yet supported with spack-stack ---load(pathJoin("met", (os.getenv("met_ver") or "None"))) ---load(pathJoin("metplus", (os.getenv("metplus_ver") or "None"))) - setenv("WGRIB2","wgrib2") setenv("UTILROOT",(os.getenv("prod_util_ROOT") or "None")) From 0bf340bce2f865c582e5305f0c5984cd3affe74e Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 09:07:32 -0600 Subject: [PATCH 47/53] Construct SS paths from version variables. --- versions/build.hera.ver | 2 +- versions/build.hercules.ver | 5 +++-- versions/build.jet.ver | 2 +- versions/build.orion.ver | 2 +- versions/build.s4.ver | 3 ++- versions/run.hera.ver | 2 +- versions/run.hercules.ver | 2 +- versions/run.jet.ver | 2 +- versions/run.orion.ver | 2 +- versions/run.s4.ver | 3 ++- 10 files changed, 14 insertions(+), 11 deletions(-) diff --git a/versions/build.hera.ver b/versions/build.hera.ver index 9f94cf257d..263e967a97 100644 --- a/versions/build.hera.ver +++ b/versions/build.hera.ver @@ -1,5 +1,5 @@ -export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/build.hercules.ver b/versions/build.hercules.ver index 2fba9e072d..cab0c92111 100644 --- a/versions/build.hercules.ver +++ b/versions/build.hercules.ver @@ -1,5 +1,6 @@ -export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 -export spack_env=gsi-addon +export intel_mkl_ver=2023.1.0 +export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/build.jet.ver b/versions/build.jet.ver index 4444b0d295..55c0ea0bd1 100644 --- a/versions/build.jet.ver +++ b/versions/build.jet.ver @@ -1,5 +1,5 @@ -export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/build.orion.ver b/versions/build.orion.ver index 91ab50da36..df7856110d 100644 --- a/versions/build.orion.ver +++ b/versions/build.orion.ver @@ -1,5 +1,5 @@ -export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2022.0.2 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-env 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" diff --git a/versions/build.s4.ver b/versions/build.s4.ver index 4b72cc5a4a..e2731ccfb3 100644 --- a/versions/build.s4.ver +++ b/versions/build.s4.ver @@ -1,4 +1,5 @@ -export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 +export spack_env=gsi-addon-env source "${HOMEgfs:-}/versions/build.spack.ver" +export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/run.hera.ver b/versions/run.hera.ver index 60a3675299..4529d34821 100644 --- a/versions/run.hera.ver +++ b/versions/run.hera.ver @@ -1,4 +1,3 @@ -export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev @@ -9,3 +8,4 @@ export R_ver=3.5.0 export gempak_ver=7.4.2 source "${HOMEgfs:-}/versions/run.spack.ver" +export spack_mod_path="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/run.hercules.ver b/versions/run.hercules.ver index 34b75b2377..549bb47df0 100644 --- a/versions/run.hercules.ver +++ b/versions/run.hercules.ver @@ -1,4 +1,3 @@ -export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.9.0 export stack_impi_ver=2021.9.0 export intel_mkl_ver=2023.1.0 @@ -7,3 +6,4 @@ export spack_env=gsi-addon-env export perl_ver=5.36.0 source "${HOMEgfs:-}/versions/run.spack.ver" +export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/run.jet.ver b/versions/run.jet.ver index 6379bd5e61..d5b98bf514 100644 --- a/versions/run.jet.ver +++ b/versions/run.jet.ver @@ -1,4 +1,3 @@ -export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.6.0/envs/gsi-addon-dev/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-dev @@ -9,3 +8,4 @@ export R_ver=4.0.2 export gempak_ver=7.4.2 source "${HOMEgfs:-}/versions/run.spack.ver" +export spack_mod_path="/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" diff --git a/versions/run.orion.ver b/versions/run.orion.ver index 3de968e06d..2fdeae8888 100644 --- a/versions/run.orion.ver +++ b/versions/run.orion.ver @@ -1,4 +1,3 @@ -export spack_mod_path="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2022.0.2 export stack_impi_ver=2021.5.1 export spack_env=gsi-addon-env @@ -7,6 +6,7 @@ export ncl_ver=6.6.2 export gempak_ver=7.5.1 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 diff --git a/versions/run.s4.ver b/versions/run.s4.ver index 941d6e46e3..6d0f4cbaca 100644 --- a/versions/run.s4.ver +++ b/versions/run.s4.ver @@ -1,7 +1,8 @@ -export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-1.6.0/envs/gsi-addon-env/install/modulefiles/Core" export stack_intel_ver=2021.5.0 export stack_impi_ver=2021.5.0 +export spack_env=gsi-addon-env export ncl_ver=6.4.0-precompiled source "${HOMEgfs:-}/versions/run.spack.ver" +export spack_mod_path="/data/prod/jedi/spack-stack/spack-stack-${spack_stack_ver}/envs/${spack_env}/install/modulefiles/Core" From f6d3015ab9f9fd23ce0081baa2edbc5d9f5f3e16 Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 20 Feb 2024 09:53:08 -0600 Subject: [PATCH 48/53] Update GDASApp hash to include SS/1.6.0 support. --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index b37680be78..9ba6bb9916 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit b37680be78560343b940352b9b2c6727190a642c +Subproject commit 9ba6bb9916abf93de899d88a540904572bdbd7a7 From 6f9afff073dd589096f992a3448fb7f0e62c9804 Mon Sep 17 00:00:00 2001 From: Jessica Meixner Date: Wed, 21 Feb 2024 13:09:44 -0500 Subject: [PATCH 49/53] Add some flexibility for ocean/ice output (#2327) This adds functionality to have ocean/ice output frequency be separate from the atm model. One time was created because there's an assumption in the post that these are the same. This could be further modified to remove this assumption. Refs #1629 --- parm/config/gefs/config.base.emc.dyn | 3 ++- parm/config/gefs/config.fcst | 1 + parm/config/gfs/config.base.emc.dyn | 4 ++- parm/config/gfs/config.fcst | 1 + parm/ufs/fv3/diag_table | 4 +-- ush/forecast_predet.sh | 4 +-- ush/parsing_namelists_CICE.sh | 2 +- ush/parsing_namelists_FV3.sh | 12 ++++++++- ush/python/pygfs/task/oceanice_products.py | 2 +- workflow/rocoto/gfs_tasks.py | 14 +--------- workflow/rocoto/tasks.py | 30 ++++++++++++++++------ 11 files changed, 47 insertions(+), 30 deletions(-) diff --git a/parm/config/gefs/config.base.emc.dyn b/parm/config/gefs/config.base.emc.dyn index 051a2188c3..0b19da2a36 100644 --- a/parm/config/gefs/config.base.emc.dyn +++ b/parm/config/gefs/config.base.emc.dyn @@ -220,9 +220,10 @@ export gfs_cyc=@gfs_cyc@ # 0: no GFS cycle, 1: 00Z only, 2: 00Z and 12Z only, 4: export FHMIN_GFS=0 export FHMIN=${FHMIN_GFS} export FHMAX_GFS=@FHMAX_GFS@ -export FHOUT_GFS=6 # Must be 6 for S2S until #1629 is addressed; 3 for ops +export FHOUT_GFS=6 export FHMAX_HF_GFS=0 export FHOUT_HF_GFS=1 +export FHOUT_OCNICE_GFS=6 if (( gfs_cyc != 0 )); then export STEP_GFS=$(( 24 / gfs_cyc )) else diff --git a/parm/config/gefs/config.fcst b/parm/config/gefs/config.fcst index 6a2a852e0b..74a84e1173 100644 --- a/parm/config/gefs/config.fcst +++ b/parm/config/gefs/config.fcst @@ -27,6 +27,7 @@ export FHMAX=${FHMAX_GFS} export FHOUT=${FHOUT_GFS} export FHMAX_HF=${FHMAX_HF_GFS} export FHOUT_HF=${FHOUT_HF_GFS} +export FHOUT_OCNICE=${FHOUT_OCNICE_GFS} # Get task specific resources source "${EXPDIR}/config.resources" fcst diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index 16aed843ba..5c02b000ef 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -248,6 +248,7 @@ fi export FHMIN=0 export FHMAX=9 export FHOUT=3 # Will be changed to 1 in config.base if (DOHYBVAR set to NO and l4densvar set to false) +export FHOUT_OCNICE=3 # Cycle to run EnKF (set to BOTH for both gfs and gdas) export EUPD_CYC="gdas" @@ -258,9 +259,10 @@ export gfs_cyc=@gfs_cyc@ # 0: no GFS cycle, 1: 00Z only, 2: 00Z and 12Z only, 4: # GFS output and frequency export FHMIN_GFS=0 export FHMAX_GFS=@FHMAX_GFS@ -export FHOUT_GFS=6 # Must be 6 for S2S until #1629 is addressed; 3 for ops +export FHOUT_GFS=3 # Must be 6 for S2S until #1629 is addressed; 3 for ops export FHMAX_HF_GFS=0 export FHOUT_HF_GFS=1 +export FHOUT_OCNICE_GFS=6 if (( gfs_cyc != 0 )); then export STEP_GFS=$(( 24 / gfs_cyc )) else diff --git a/parm/config/gfs/config.fcst b/parm/config/gfs/config.fcst index d2e2664e9c..c03c97e56f 100644 --- a/parm/config/gfs/config.fcst +++ b/parm/config/gfs/config.fcst @@ -30,6 +30,7 @@ case ${RUN} in export FHOUT=${FHOUT_GFS} export FHMAX_HF=${FHMAX_HF_GFS} export FHOUT_HF=${FHOUT_HF_GFS} + export FHOUT_OCNICE=${FHOUT_OCNICE_GFS} ;; *gdas) export FHMAX_HF=0 diff --git a/parm/ufs/fv3/diag_table b/parm/ufs/fv3/diag_table index b972b3470c..47106cb294 100644 --- a/parm/ufs/fv3/diag_table +++ b/parm/ufs/fv3/diag_table @@ -1,7 +1,7 @@ "fv3_history", 0, "hours", 1, "hours", "time" "fv3_history2d", 0, "hours", 1, "hours", "time" -"ocn%4yr%2mo%2dy%2hr", 6, "hours", 1, "hours", "time", 6, "hours", "1901 1 1 0 0 0" -"ocn_daily%4yr%2mo%2dy", 1, "days", 1, "days", "time", 1, "days", "1901 1 1 0 0 0" +"ocn%4yr%2mo%2dy%2hr", @[FHOUT_OCNICE], "hours", 1, "hours", "time", @[FHOUT_OCNICE], "hours", "@[SYEAR] @[SMONTH] @[SDAY] @[CHOUR] 0 0" +"ocn_daily%4yr%2mo%2dy", 1, "days", 1, "days", "time", 1, "days", "@[SYEAR] @[SMONTH] @[SDAY] @[CHOUR] 0 0" ############## # Ocean fields diff --git a/ush/forecast_predet.sh b/ush/forecast_predet.sh index 1aaa1a4b9d..ab02270b46 100755 --- a/ush/forecast_predet.sh +++ b/ush/forecast_predet.sh @@ -229,7 +229,7 @@ CICE_predet(){ # Convert output settings into an explicit list for CICE # Ignore "not used" warning # shellcheck disable=SC2034 - CICE_OUTPUT_FH=$(seq -s ' ' "${FHMIN}" "${FHOUT}" "${FHMAX}") + CICE_OUTPUT_FH=$(seq -s ' ' "${FHMIN}" "${FHOUT_OCNICE}" "${FHMAX}") } @@ -247,7 +247,7 @@ MOM6_predet(){ # Convert output settings into an explicit list for MOM6 # Ignore "not used" warning # shellcheck disable=SC2034 - MOM6_OUTPUT_FH=$(seq -s ' ' "${FHMIN}" "${FHOUT}" "${FHMAX}") + MOM6_OUTPUT_FH=$(seq -s ' ' "${FHMIN}" "${FHOUT_OCNICE}" "${FHMAX}") } diff --git a/ush/parsing_namelists_CICE.sh b/ush/parsing_namelists_CICE.sh index 3f1798d3e9..2dab096d16 100755 --- a/ush/parsing_namelists_CICE.sh +++ b/ush/parsing_namelists_CICE.sh @@ -62,7 +62,7 @@ local CICE_RESTART_FILE="cice_model.res" local CICE_DUMPFREQ="y" # "h","d","m" or "y" for restarts at intervals of "hours", "days", "months" or "years" local CICE_DUMPFREQ_N=10000 # Set this to a really large value, as cice, mom6 and cmeps restart interval is controlled by ufs.configure local CICE_DIAGFREQ=6 -local CICE_HISTFREQ_N="0, 0, ${FHOUT}, 1, 1" +local CICE_HISTFREQ_N="0, 0, ${FHOUT_OCNICE}, 1, 1" if [[ "${RUN}" =~ "gdas" ]]; then local CICE_HIST_AVG=".false., .false., .false., .false., .false." # DA needs instantaneous else diff --git a/ush/parsing_namelists_FV3.sh b/ush/parsing_namelists_FV3.sh index 83e0c10525..88a0065076 100755 --- a/ush/parsing_namelists_FV3.sh +++ b/ush/parsing_namelists_FV3.sh @@ -9,6 +9,8 @@ ## This script is a direct execution. ##### +# Disable variable not used warnings +# shellcheck disable=SC2034 FV3_namelists(){ # setup the tables @@ -33,7 +35,15 @@ if [[ -n "${AERO_DIAG_TABLE:-}" ]]; then cat "${AERO_DIAG_TABLE}" fi cat "${DIAG_TABLE_APPEND}" -} >> diag_table +} >> diag_table_template + +local template=diag_table_template +local SYEAR=${current_cycle:0:4} +local SMONTH=${current_cycle:4:2} +local SDAY=${current_cycle:6:2} +local CHOUR=${current_cycle:8:2} +source "${HOMEgfs}/ush/atparse.bash" +atparse < "${template}" >> "diag_table" # copy data table diff --git a/ush/python/pygfs/task/oceanice_products.py b/ush/python/pygfs/task/oceanice_products.py index 968acb0750..c865a9f408 100644 --- a/ush/python/pygfs/task/oceanice_products.py +++ b/ush/python/pygfs/task/oceanice_products.py @@ -61,7 +61,7 @@ def __init__(self, config: Dict[str, Any]) -> None: # TODO: This is a bit of a hack, but it works for now # FIXME: find a better way to provide the averaging period # This will be different for ocean and ice, so when they are made flexible, this will need to be addressed - avg_period = f"{self.config.FORECAST_HOUR-self.config.FHOUT_GFS:03d}-{self.config.FORECAST_HOUR:03d}" + avg_period = f"{self.config.FORECAST_HOUR-self.config.FHOUT_OCNICE_GFS:03d}-{self.config.FORECAST_HOUR:03d}" localdict = AttrDict( {'component': self.config.COMPONENT, diff --git a/workflow/rocoto/gfs_tasks.py b/workflow/rocoto/gfs_tasks.py index 83623f42d2..dd5b0cd551 100644 --- a/workflow/rocoto/gfs_tasks.py +++ b/workflow/rocoto/gfs_tasks.py @@ -929,19 +929,7 @@ def atmanlprod(self): @staticmethod def _get_ufs_postproc_grps(cdump, config, component='atmos'): - # Make a local copy of the config to avoid modifying the original - local_config = config.copy() - - # Ocean/Ice components do not have a HF output option like the atmosphere - if component in ['ocean', 'ice']: - local_config['FHMAX_HF_GFS'] = config['FHMAX_GFS'] - local_config['FHOUT_HF_GFS'] = config['FHOUT_GFS'] - - fhrs = Tasks._get_forecast_hours(cdump, local_config) - - # ocean/ice components do not have fhr 0 as they are averaged output - if component in ['ocean', 'ice']: - fhrs.remove(0) + fhrs = Tasks._get_forecast_hours(cdump, config, component=component) nfhrs_per_grp = config.get('NFHRS_PER_GROUP', 1) ngrps = len(fhrs) // nfhrs_per_grp if len(fhrs) % nfhrs_per_grp == 0 else len(fhrs) // nfhrs_per_grp + 1 diff --git a/workflow/rocoto/tasks.py b/workflow/rocoto/tasks.py index 540f6ebe47..77847133a9 100644 --- a/workflow/rocoto/tasks.py +++ b/workflow/rocoto/tasks.py @@ -120,23 +120,37 @@ def _template_to_rocoto_cycstring(self, template: str, subs_dict: dict = {}) -> rocoto_conversion_dict.get) @staticmethod - def _get_forecast_hours(cdump, config) -> List[str]: - fhmin = config['FHMIN'] - fhmax = config['FHMAX'] - fhout = config['FHOUT'] + def _get_forecast_hours(cdump, config, component='atmos') -> List[str]: + # Make a local copy of the config to avoid modifying the original + local_config = config.copy() + + # Ocean/Ice components do not have a HF output option like the atmosphere + if component in ['ocean', 'ice']: + local_config['FHMAX_HF_GFS'] = config['FHMAX_GFS'] + local_config['FHOUT_HF_GFS'] = config['FHOUT_OCNICE_GFS'] + local_config['FHOUT_GFS'] = config['FHOUT_OCNICE_GFS'] + local_config['FHOUT'] = config['FHOUT_OCNICE'] + + fhmin = local_config['FHMIN'] + fhmax = local_config['FHMAX'] + fhout = local_config['FHOUT'] # Get a list of all forecast hours fhrs = [] if cdump in ['gdas']: fhrs = list(range(fhmin, fhmax + fhout, fhout)) elif cdump in ['gfs', 'gefs']: - fhmax = config['FHMAX_GFS'] - fhout = config['FHOUT_GFS'] - fhmax_hf = config['FHMAX_HF_GFS'] - fhout_hf = config['FHOUT_HF_GFS'] + fhmax = local_config['FHMAX_GFS'] + fhout = local_config['FHOUT_GFS'] + fhmax_hf = local_config['FHMAX_HF_GFS'] + fhout_hf = local_config['FHOUT_HF_GFS'] fhrs_hf = range(fhmin, fhmax_hf + fhout_hf, fhout_hf) fhrs = list(fhrs_hf) + list(range(fhrs_hf[-1] + fhout, fhmax + fhout, fhout)) + # ocean/ice components do not have fhr 0 as they are averaged output + if component in ['ocean', 'ice']: + fhrs.remove(0) + return fhrs def get_resource(self, task_name): From 516b2a270234bdab5714ef2705c83dd3835b134d Mon Sep 17 00:00:00 2001 From: DavidHuber Date: Thu, 22 Feb 2024 14:19:16 +0000 Subject: [PATCH 50/53] Updated GDAS to include rocoto/1.3.6 on Hera. --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 9ba6bb9916..0ebe826a41 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 9ba6bb9916abf93de899d88a540904572bdbd7a7 +Subproject commit 0ebe826a41cb7bf0ea277791060f5bc03892cd3e From 5c96eb2272fe6117f9e4a4c0c790db58e4870d46 Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 22 Feb 2024 12:37:47 -0600 Subject: [PATCH 51/53] Update GDAS hash to allow modified snow DA analysis --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 0ebe826a41..8b4bca9e86 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 0ebe826a41cb7bf0ea277791060f5bc03892cd3e +Subproject commit 8b4bca9e8678c8bef41df9c5047f7494cd9daeac From 0459203e97211b041520b39e93a188951396ba33 Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 22 Feb 2024 12:55:51 -0600 Subject: [PATCH 52/53] Update GDASApp hash to current develop --- sorc/gdas.cd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/gdas.cd b/sorc/gdas.cd index 8b4bca9e86..984ecbea3c 160000 --- a/sorc/gdas.cd +++ b/sorc/gdas.cd @@ -1 +1 @@ -Subproject commit 8b4bca9e8678c8bef41df9c5047f7494cd9daeac +Subproject commit 984ecbea3cd971cfb98b4ce7d9299442a38e8dd1 From 79d305e8cbc339208ea6fe0475ddc56af94a285b Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 22 Feb 2024 14:53:57 -0600 Subject: [PATCH 53/53] Disable snow DA tests --- ci/cases/pr/C96_atmsnowDA.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/cases/pr/C96_atmsnowDA.yaml b/ci/cases/pr/C96_atmsnowDA.yaml index 35fcc10fb2..eaf42cd392 100644 --- a/ci/cases/pr/C96_atmsnowDA.yaml +++ b/ci/cases/pr/C96_atmsnowDA.yaml @@ -19,3 +19,4 @@ arguments: skip_ci_on_hosts: - orion - hercules + - hera