Skip to content

Commit

Permalink
Update UFS to develop as of 2023 Apr 17 (#1509)
Browse files Browse the repository at this point in the history
Updates the UFS model hash to the version as of 2023 Apr 17.

Some associated changes accompany this update
- Restart filenames for MOM6 (ufs-community/ufs-weather-model#1599)
- Remove store coriolis setting from MOM6 namelist (ufs-community/ufs-weather-model#1599)
- Change in atm 'log' file names (ufs-community/ufs-weather-model#1704)
- Additions to diag_table for frozen species (ufs-community/ufs-weather-model#1529)
- Restart quilting (ufs-community/ufs-weather-model#1633)
- Update to post itag (ufs-community/ufs-weather-model#1690)

The switch to restart quilting adds an additional constraint on the size of write groups to be divisible by the number of tiles, so all were increased to the next multiple of 6.

In the process of updating the diag tables, unused tables were removed.

Closes #1279 as moot
Closes #1445
Closes #1499
Partially addresses #1277
  • Loading branch information
WalterKolczynski-NOAA committed May 1, 2023
1 parent 6d3ed8a commit f2ea92b
Show file tree
Hide file tree
Showing 20 changed files with 43 additions and 1,872 deletions.
2 changes: 1 addition & 1 deletion Externals.cfg
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# External sub-modules of global-workflow

[UFS]
tag = c22aaad
tag = 2247060
local_path = sorc/ufs_model.fd
repo_url = https://github.com/ufs-community/ufs-weather-model.git
protocol = git
Expand Down
2 changes: 1 addition & 1 deletion jobs/JGLOBAL_ATMOS_POST
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ fi
# Specify Restart File Name to Key Off
#######################################
# TODO Improve the name of this variable
export restart_file=${COM_ATMOS_HISTORY}/${RUN}.t${cyc}z.logf
export restart_file=${COM_ATMOS_HISTORY}/${RUN}.t${cyc}z.atm.logf

####################################
# Specify Timeout Behavior of Post
Expand Down
5 changes: 2 additions & 3 deletions parm/config/config.resources
Original file line number Diff line number Diff line change
Expand Up @@ -517,7 +517,7 @@ elif [[ "${step}" = "fcst" || "${step}" = "efcs" ]]; then
export layout_x=${layout_x_gfs}
export layout_y=${layout_y_gfs}
export WRITE_GROUP=${WRITE_GROUP_GFS}
export WRTTASK_PER_GROUP=${WRTTASK_PER_GROUP_GFS}
export WRTTASK_PER_GROUP_PER_THREAD=${WRTTASK_PER_GROUP_PER_THREAD_GFS}
ntasks_fv3=${ntasks_fv3_gfs}
ntasks_quilt=${ntasks_quilt_gfs}
nthreads_fv3=${nthreads_fv3_gfs}
Expand All @@ -530,8 +530,7 @@ elif [[ "${step}" = "fcst" || "${step}" = "efcs" ]]; then
# PETS for quilting
if [[ "${QUILTING:-}" = ".true." ]]; then
(( QUILTPETS = ntasks_quilt * nthreads_fv3 ))
(( WRTTASK_PER_GROUP = WRTTASK_PER_GROUP * nthreads_fv3 )) # when threads are used, WRTTASKS_PER_GROUP = INCOMING_WRTTASKS_PER_GROUP * threads
# model_configure should be updated to reflect the number of threads used by calling this variable write_pets_per_group
(( WRTTASK_PER_GROUP = WRTTASK_PER_GROUP_PER_THREAD ))
export WRTTASK_PER_GROUP
else
QUILTPETS=0
Expand Down
37 changes: 21 additions & 16 deletions parm/config/config.ufs
Original file line number Diff line number Diff line change
Expand Up @@ -113,9 +113,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=1
export cdmbgwd="0.071,2.1,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=1
export WRTTASK_PER_GROUP=2
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=1
export WRITE_GROUP_GFS=1
export WRTTASK_PER_GROUP_GFS=2
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=1
;;
"C96")
export DELTIM=600
Expand All @@ -127,9 +127,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=1
export cdmbgwd="0.14,1.8,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=1
export WRTTASK_PER_GROUP=4
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=1
export WRITE_GROUP_GFS=1
export WRTTASK_PER_GROUP_GFS=4
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=1
;;
"C192")
export DELTIM=450
Expand All @@ -141,9 +141,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=2
export cdmbgwd="0.23,1.5,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=1
export WRTTASK_PER_GROUP=64
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=10
export WRITE_GROUP_GFS=2
export WRTTASK_PER_GROUP_GFS=64
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=5
;;
"C384")
export DELTIM=300
Expand All @@ -155,9 +155,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=2
export cdmbgwd="1.1,0.72,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=2
export WRTTASK_PER_GROUP=48
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=8
export WRITE_GROUP_GFS=2
export WRTTASK_PER_GROUP_GFS=48
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=4
;;
"C768")
export DELTIM=150
Expand All @@ -169,9 +169,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=4
export cdmbgwd="4.0,0.15,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=2
export WRTTASK_PER_GROUP=64
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=10
export WRITE_GROUP_GFS=4
export WRTTASK_PER_GROUP_GFS=64
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=10
;;
"C1152")
export DELTIM=120
Expand All @@ -183,9 +183,9 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=4
export cdmbgwd="4.0,0.10,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=4
export WRTTASK_PER_GROUP=64 # TODO: refine these numbers when a case is available
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=10 # TODO: refine these numbers when a case is available
export WRITE_GROUP_GFS=4
export WRTTASK_PER_GROUP_GFS=64 # TODO: refine these numbers when a case is available
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=10 # TODO: refine these numbers when a case is available
;;
"C3072")
export DELTIM=90
Expand All @@ -197,23 +197,28 @@ case "${fv3_res}" in
export nthreads_fv3_gfs=4
export cdmbgwd="4.0,0.05,1.0,1.0" # mountain blocking, ogwd, cgwd, cgwd src scaling
export WRITE_GROUP=4
export WRTTASK_PER_GROUP=64 # TODO: refine these numbers when a case is available
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE=10 # TODO: refine these numbers when a case is available
export WRITE_GROUP_GFS=4
export WRTTASK_PER_GROUP_GFS=64 # TODO: refine these numbers when a case is available
export WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS=10 # TODO: refine these numbers when a case is available
;;
*)
echo "FATAL ERROR: Unsupported FV3 resolution = ${fv3_res}, ABORT!"
exit 1
;;
esac

(( WRTTASK_PER_GROUP_PER_THREAD = WRTTASK_PER_GROUP_PER_THREAD_PER_TILE * 6 ))
(( WRTTASK_PER_GROUP_PER_THREAD_GFS = WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS * 6 ))
export WRTTASK_PER_GROUP_PER_THREAD
export WRTTASK_PER_GROUP_PER_THREAD_GFS

(( ntasks_fv3 = layout_x * layout_y * 6 ))
(( ntasks_fv3_gfs = layout_x_gfs * layout_y_gfs * 6 ))
export ntasks_fv3
export ntasks_fv3_gfs

(( ntasks_quilt = WRITE_GROUP * WRTTASK_PER_GROUP ))
(( ntasks_quilt_gfs = WRITE_GROUP_GFS * WRTTASK_PER_GROUP_GFS ))
(( ntasks_quilt = WRITE_GROUP * WRTTASK_PER_GROUP_PER_THREAD ))
(( ntasks_quilt_gfs = WRITE_GROUP_GFS * WRTTASK_PER_GROUP_PER_THREAD_GFS ))
export ntasks_quilt
export ntasks_quilt_gfs

Expand Down
1 change: 0 additions & 1 deletion parm/mom6/MOM_input_template_025
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,6 @@ DTFREEZE_DP = -7.75E-08 ! [deg C Pa-1] default = 0.0
PARALLEL_RESTARTFILES = True ! [Boolean] default = False
! If true, each processor writes its own restart file, otherwise a single
! restart file is generated
STORE_CORIOLIS_ACCEL = False

! === module MOM_tracer_flow_control ===
USE_IDEAL_AGE_TRACER = False ! [Boolean] default = False
Expand Down
1 change: 0 additions & 1 deletion parm/mom6/MOM_input_template_050
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,6 @@ DTFREEZE_DP = -7.75E-08 ! [deg C Pa-1] default = 0.0
PARALLEL_RESTARTFILES = True ! [Boolean] default = False
! If true, each processor writes its own restart file, otherwise a single
! restart file is generated
STORE_CORIOLIS_ACCEL = False

! === module MOM_tracer_flow_control ===
USE_IDEAL_AGE_TRACER = False ! [Boolean] default = False
Expand Down
1 change: 0 additions & 1 deletion parm/mom6/MOM_input_template_100
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,6 @@ TFREEZE_FORM = "MILLERO_78" ! default = "LINEAR"
PARALLEL_RESTARTFILES = True ! [Boolean] default = False
! If true, each processor writes its own restart file, otherwise a single
! restart file is generated
STORE_CORIOLIS_ACCEL = False

! === module MOM_tracer_flow_control ===
USE_IDEAL_AGE_TRACER = False ! [Boolean] default = False
Expand Down
1 change: 0 additions & 1 deletion parm/mom6/MOM_input_template_500
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,6 @@ TFREEZE_FORM = "MILLERO_78" ! default = "LINEAR"

! === module MOM_restart ===
RESTART_CHECKSUMS_REQUIRED = False
STORE_CORIOLIS_ACCEL = False
! === module MOM_tracer_flow_control ===

! === module MOM_coord_initialization ===
Expand Down
7 changes: 7 additions & 0 deletions parm/parm_fv3diag/diag_table
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,13 @@
"gfs_dyn", "hs", "hgtsfc", "fv3_history", "all", .false., "none", 2

"gfs_phys", "cldfra", "cldfra", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "frzr", "frzr", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "frzrb", "frzrb", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "frozr", "frozr", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "frozrb", "frozrb", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "tsnowp", "tsnowp", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "tsnowpb", "tsnowpb", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "rhonewsn", "rhonewsn", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "ALBDO_ave", "albdo_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcp_ave", "cprat_ave", "fv3_history2d", "all", .false., "none", 2
"gfs_phys", "cnvprcpb_ave", "cpratb_ave", "fv3_history2d", "all", .false., "none", 2
Expand Down
Loading

0 comments on commit f2ea92b

Please sign in to comment.