Skip to content

Commit

Permalink
Merge pull request #131 from grantfirl/ufs-dev-PR181
Browse files Browse the repository at this point in the history
UFS-dev PR#181
  • Loading branch information
grantfirl authored Apr 10, 2024
2 parents 1d2fa09 + 306d64c commit 6598970
Show file tree
Hide file tree
Showing 38 changed files with 3,687 additions and 908 deletions.
2 changes: 1 addition & 1 deletion CMEPS-interface/CMEPS
2 changes: 1 addition & 1 deletion FV3
2 changes: 1 addition & 1 deletion MOM6-interface/MOM6
Submodule MOM6 updated 145 files
7 changes: 6 additions & 1 deletion MOM6-interface/mom6_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,7 @@ list(APPEND mom6_src_files
MOM6/src/parameterizations/lateral/MOM_thickness_diffuse.F90
MOM6/src/parameterizations/lateral/MOM_tidal_forcing.F90
MOM6/src/parameterizations/lateral/MOM_Zanna_Bolton.F90
MOM6/src/parameterizations/lateral/MOM_self_attr_load.F90

MOM6/src/parameterizations/vertical/MOM_ALE_sponge.F90
MOM6/src/parameterizations/vertical/MOM_CVMix_KPP.F90
Expand Down Expand Up @@ -305,7 +306,11 @@ list(APPEND mom6_nuopc_src_files
MOM6/config_src/drivers/nuopc_cap/mom_cap_time.F90
MOM6/config_src/drivers/nuopc_cap/mom_ocean_model_nuopc.F90
MOM6/config_src/drivers/nuopc_cap/mom_surface_forcing_nuopc.F90
MOM6/config_src/drivers/unit_tests/MOM_unit_test_driver.F90
MOM6/config_src/drivers/unit_tests/test_MOM_file_parser.F90
MOM6/config_src/drivers/unit_tests/test_MOM_mixedlayer_restrat.F90
MOM6/config_src/drivers/unit_tests/test_MOM_string_functions.F90
MOM6/config_src/drivers/unit_tests/test_MOM_EOS.F90
MOM6/config_src/drivers/timing_tests/time_MOM_EOS.F90
)

list(APPEND mom6_solo_src_files
Expand Down
12 changes: 10 additions & 2 deletions cmake/GNU.cmake
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
# https://github.com/ufs-community/ufs-weather-model/issues/2159
if(MOVING_NEST)
message(FATAL_ERROR "Option MOVING_NEST not compatible with ${CMAKE_Fortran_COMPILER_ID}}")
endif()

set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -ggdb -fbacktrace -cpp -fcray-pointer -ffree-line-length-none -fno-range-check")

if(${CMAKE_Fortran_COMPILER_VERSION} VERSION_GREATER_EQUAL 10)
Expand All @@ -11,8 +16,11 @@ endif()
if(DEBUG)
add_definitions(-DDEBUG)
set(CMAKE_Fortran_FLAGS_DEBUG "${CMAKE_Fortran_FLAGS_DEBUG} -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check")
if(CMAKE_Platform STREQUAL "hercules.gnu")
set(CMAKE_Fortran_FLAGS_DEBUG "${CMAKE_Fortran_FLAGS_DEBUG} -mcmodel=medium")
# https://github.com/ufs-community/ufs-weather-model/issues/2155
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND ${CMAKE_HOST_SYSTEM_PROCESSOR} MATCHES "arm64")
set( CMAKE_Fortran_FLAGS_DEBUG "${CMAKE_Fortran_FLAGS_DEBUG} -mcmodel=small" )
else()
set( CMAKE_Fortran_FLAGS_DEBUG "${CMAKE_Fortran_FLAGS_DEBUG} -mcmodel=medium" )
endif()
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0")
else()
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_gaea.intel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ help([[
on the NOAA RDHPC machine Gaea C5 using Intel-2023.1.0.
]])

whatis([===[Loads libraries needed for building the UFS Weather Model on Gaea C5 ]===])
whatis([===[Loads libraries needed for building the UFS Weather Model on Gaea ]===])

load("PrgEnv-intel/8.3.3")
load("intel-classic/2023.1.0")
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_jet.intel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ help([[
loads UFS Model prerequisites for Jet/Intel
]])

prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.5.1/envs/unified-env/install/modulefiles/Core")
prepend_path("MODULEPATH", "/mnt/lfs4/HFIP/hfv3gfs/role.epic/spack-stack/spack-stack-1.5.1/envs/unified-env-rocky8/install/modulefiles/Core")

stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0"
load(pathJoin("stack-intel", stack_intel_ver))
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_noaacloud.intel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ loads UFS Model prerequisites for NOAA Parallelworks/Intel
]])


prepend_path("MODULEPATH", "/contrib/EPIC/spack-stack/spack-stack-1.5.0/envs/unified-env/install/modulefiles/Core")
prepend_path("MODULEPATH", "/contrib/spack-stack/spack-stack-1.5.1/envs/unified-env/install/modulefiles/Core")

stack_intel_ver=os.getenv("stack_intel_ver") or "2021.3.0"
load(pathJoin("stack-intel", stack_intel_ver))
Expand Down
2 changes: 1 addition & 1 deletion tests/bl_date.conf
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export BL_DATE=20240227
export BL_DATE=20240312
301 changes: 301 additions & 0 deletions tests/ci/Jenkinsfile.combined

Large diffs are not rendered by default.

24 changes: 20 additions & 4 deletions tests/ci/repo_check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ result() {
}

# Declare variables
declare -A base fv3 mom6 cice ww3 stoch gocart cmeps cdeps hycom cmake
submodules="fv3 mom6 cice ww3 stoch gocart cmeps cdeps hycom cmake"
declare -A base fv3 mom6 cice ww3 stoch gocart cmeps cdeps hycom cmake ccpp-framework ccpp-physics upp atmos_cubed_sphere
submodules="fv3 mom6 cice ww3 stoch gocart cmeps cdeps hycom cmake ccpp-framework ccpp-physics upp atmos_cubed_sphere"
comment=''
ownerID=$1

Expand All @@ -39,12 +39,12 @@ ww3[repo]='https://github.com/NOAA-EMC/WW3'
ww3[branch]='dev/ufs-weather-model'
ww3[dir]='WW3'

stoch[repo]='https://github.com/noaa-psd/stochastic_physics'
stoch[repo]='https://github.com/noaa-psl/stochastic_physics'
stoch[branch]='master'
stoch[dir]='stochastic_physics'

gocart[repo]='https://github.com/GEOS-ESM/GOCART'
gocart[branch]='develop'
gocart[branch]='main'
gocart[dir]='GOCART'

cmeps[repo]='https://github.com/NOAA-EMC/CMEPS'
Expand All @@ -63,6 +63,22 @@ cmake[repo]='https://github.com/NOAA-EMC/CMakeModules'
cmake[branch]='develop'
cmake[dir]='CMakeModules'

ccpp-framework[repo]='https://github.com/NCAR/ccpp-framework'
ccpp-framework[branch]='main'
ccpp-framework[dir]='ccpp/framework'

ccpp-physics[repo]='https://github.com/ufs-community/ccpp-physics'
ccpp-physics[branch]='ufs/dev'
ccpp-physics[dir]='ccpp/physics'

upp[repo]='https://github.com/NOAA-EMC/UPP'
upp[branch]='develop'
upp[dir]='upp'

atmos_cubed_sphere[repo]='https://github.com/NOAA-GFDL/GFDL_atmos_cubed_sphere'
atmos_cubed_sphere[branch]='main'
atmos_cubed_sphere[dir]='atmos_cubed_sphere'

# Get sha-1's of the top of develop of ufs-weather-model
app="Accept: application/vnd.github.v3+json"
url="https://api.github.com/repos/ufs-community/ufs-weather-model/branches/develop"
Expand Down
2 changes: 1 addition & 1 deletion tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,7 @@ export DumpFields="false"
export_fv3 ()
{
# ufs.configure defaults
export UFS_CONFIGURE=ufs.configure.atm.IN
export UFS_CONFIGURE=ufs.configure.atm_esmf.IN
export MODEL_CONFIGURE=model_configure.IN
export atm_model=fv3

Expand Down
48 changes: 24 additions & 24 deletions tests/logs/OpnReqTests_control_p8_hera.log
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Wed Feb 28 15:14:11 UTC 2024
Wed Mar 13 16:00:32 UTC 2024
Start Operation Requirement Test


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_bit_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/bit_base_bit_base
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/bit_base_bit_base
Checking test bit_base results ....
Moving baseline bit_base files ....
Moving sfcf000.nc .........OK
Expand Down Expand Up @@ -51,14 +51,14 @@ Moving baseline bit_base files ....
Moving RESTART/20210323.060000.sfc_data.tile5.nc .........OK
Moving RESTART/20210323.060000.sfc_data.tile6.nc .........OK

0: The total amount of wall time = 281.461889
0: The maximum resident set size (KB) = 1300600
0: The total amount of wall time = 330.604077
0: The maximum resident set size (KB) = 1306700

Test bit_base PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_dbg_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/dbg_base_dbg_base
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/dbg_base_dbg_base
Checking test dbg_base results ....
Moving baseline dbg_base files ....
Moving sfcf000.nc .........OK
Expand Down Expand Up @@ -106,14 +106,14 @@ Moving baseline dbg_base files ....
Moving RESTART/20210323.060000.sfc_data.tile5.nc .........OK
Moving RESTART/20210323.060000.sfc_data.tile6.nc .........OK

0: The total amount of wall time = 901.527002
0: The maximum resident set size (KB) = 1282896
0: The total amount of wall time = 929.248031
0: The maximum resident set size (KB) = 1291568

Test dbg_base PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/dcp_dcp
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/dcp_dcp
Checking test dcp results ....
Comparing sfcf000.nc .....USING NCCMP......OK
Comparing sfcf021.nc .....USING NCCMP......OK
Expand Down Expand Up @@ -160,14 +160,14 @@ Checking test dcp results ....
Comparing RESTART/20210323.060000.sfc_data.tile5.nc .....USING NCCMP......OK
Comparing RESTART/20210323.060000.sfc_data.tile6.nc .....USING NCCMP......OK

0: The total amount of wall time = 249.770627
0: The maximum resident set size (KB) = 1280800
0: The total amount of wall time = 250.255270
0: The maximum resident set size (KB) = 1278404

Test dcp PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/mpi_mpi
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/mpi_mpi
Checking test mpi results ....
Comparing sfcf000.nc .....USING NCCMP......OK
Comparing sfcf021.nc .....USING NCCMP......OK
Expand Down Expand Up @@ -214,14 +214,14 @@ Checking test mpi results ....
Comparing RESTART/20210323.060000.sfc_data.tile5.nc .....USING NCCMP......OK
Comparing RESTART/20210323.060000.sfc_data.tile6.nc .....USING NCCMP......OK

0: The total amount of wall time = 252.183005
0: The maximum resident set size (KB) = 1280256
0: The total amount of wall time = 252.275080
0: The maximum resident set size (KB) = 1281536

Test mpi PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/rst_rst
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/rst_rst
Checking test rst results ....
Comparing sfcf000.nc .....USING NCCMP......OK
Comparing sfcf021.nc .....USING NCCMP......OK
Expand Down Expand Up @@ -268,14 +268,14 @@ Checking test rst results ....
Comparing RESTART/20210323.060000.sfc_data.tile5.nc .....USING NCCMP......OK
Comparing RESTART/20210323.060000.sfc_data.tile6.nc .....USING NCCMP......OK

0: The total amount of wall time = 249.439187
0: The maximum resident set size (KB) = 1279912
0: The total amount of wall time = 257.921526
0: The maximum resident set size (KB) = 1278656

Test rst PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/std_base_std_base
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/std_base_std_base
Checking test std_base results ....
Moving baseline std_base files ....
Moving sfcf000.nc .........OK
Expand Down Expand Up @@ -323,14 +323,14 @@ Moving baseline std_base files ....
Moving RESTART/20210323.060000.sfc_data.tile5.nc .........OK
Moving RESTART/20210323.060000.sfc_data.tile6.nc .........OK

0: The total amount of wall time = 255.032590
0: The maximum resident set size (KB) = 1278480
0: The total amount of wall time = 248.830644
0: The maximum resident set size (KB) = 1281968

Test std_base PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/control_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_165959/thr_thr
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_226640/thr_thr
Checking test thr results ....
Comparing sfcf000.nc .....USING NCCMP......OK
Comparing sfcf021.nc .....USING NCCMP......OK
Expand Down Expand Up @@ -377,11 +377,11 @@ Checking test thr results ....
Comparing RESTART/20210323.060000.sfc_data.tile5.nc .....USING NCCMP......OK
Comparing RESTART/20210323.060000.sfc_data.tile6.nc .....USING NCCMP......OK

0: The total amount of wall time = 251.992809
0: The maximum resident set size (KB) = 1280792
0: The total amount of wall time = 250.246300
0: The maximum resident set size (KB) = 1282284

Test thr PASS

OPERATION REQUIREMENT TEST WAS SUCCESSFUL
Wed Feb 28 16:27:22 UTC 2024
Elapsed time: 01h:13m:11s. Have a nice day!
Wed Mar 13 17:40:13 UTC 2024
Elapsed time: 01h:39m:42s. Have a nice day!
24 changes: 12 additions & 12 deletions tests/logs/OpnReqTests_cpld_control_nowave_noaero_p8_hera.log
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Wed Feb 28 18:25:43 UTC 2024
Wed Mar 13 18:29:02 UTC 2024
Start Operation Requirement Test


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/cpld_control_c96_noaero_p8_dbg_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_114547/dbg_base_dbg_base
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_216513/dbg_base_dbg_base
Checking test dbg_base results ....
Moving baseline dbg_base files ....
Moving sfcf021.tile1.nc .........OK
Expand Down Expand Up @@ -66,14 +66,14 @@ Moving baseline dbg_base files ....
Moving RESTART/iced.2021-03-23-21600.nc .........OK
Moving RESTART/ufs.cpld.cpl.r.2021-03-23-21600.nc .........OK

0: The total amount of wall time = 1260.280333
0: The maximum resident set size (KB) = 1412828
0: The total amount of wall time = 1390.651720
0: The maximum resident set size (KB) = 1411516

Test dbg_base PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/cpld_control_c96_noaero_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_114547/rst_rst
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_216513/rst_rst
Checking test rst results ....
Comparing sfcf021.tile1.nc .....USING NCCMP......OK
Comparing sfcf021.tile2.nc .....USING NCCMP......OK
Expand Down Expand Up @@ -135,14 +135,14 @@ Checking test rst results ....
Comparing RESTART/iced.2021-03-23-21600.nc .....USING NCCMP......OK
Comparing RESTART/ufs.cpld.cpl.r.2021-03-23-21600.nc .....USING NCCMP......OK

0: The total amount of wall time = 384.587401
0: The maximum resident set size (KB) = 1391428
0: The total amount of wall time = 388.568533
0: The maximum resident set size (KB) = 1404964

Test rst PASS


baseline dir = /scratch1/NCEPDEV/stmp4/Zachary.Shrader/FV3_OPNREQ_TEST/OPNREQ_TEST/cpld_control_c96_noaero_p8_std_base_gnu
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_114547/std_base_std_base
working dir = /scratch1/NCEPDEV/stmp2/Zachary.Shrader/FV3_OPNREQ_TEST/opnReqTest_216513/std_base_std_base
Checking test std_base results ....
Moving baseline std_base files ....
Moving sfcf021.tile1.nc .........OK
Expand Down Expand Up @@ -205,11 +205,11 @@ Moving baseline std_base files ....
Moving RESTART/iced.2021-03-23-21600.nc .........OK
Moving RESTART/ufs.cpld.cpl.r.2021-03-23-21600.nc .........OK

0: The total amount of wall time = 383.528966
0: The maximum resident set size (KB) = 1394880
0: The total amount of wall time = 429.798207
0: The maximum resident set size (KB) = 1403184

Test std_base PASS

OPERATION REQUIREMENT TEST WAS SUCCESSFUL
Wed Feb 28 21:03:16 UTC 2024
Elapsed time: 02h:37m:33s. Have a nice day!
Wed Mar 13 19:38:16 UTC 2024
Elapsed time: 01h:09m:15s. Have a nice day!
Loading

0 comments on commit 6598970

Please sign in to comment.