Zero-diff changes to sfc updates, to speed up v17#4659
Zero-diff changes to sfc updates, to speed up v17#4659ClaraDraper-NOAA wants to merge 12 commits intoNOAA-EMC:dev/gfs.v17from
Conversation
|
Draft, while I do testing and we get the UFS_UTILS branch merged. @tsga Here is the branch to use to test the speed-up for the deterministic analysis on WCOSS. |
.gitmodules
Outdated
| path = sorc/ufs_utils.fd | ||
| url = https://github.com/ufs-community/UFS_UTILS.git | ||
| url = https://github.com/ClaraDraper-NOAA/UFS_UTILS.git | ||
| branch = speedup_sfcanl |
There was a problem hiding this comment.
this should be feature/speedup_sfcanl?
There was a problem hiding this comment.
Yes! Thanks. I'll push an update.
|
This PR doesn't improve on the timing much. I'm going to leave it in draft, until we can supplement it with additional changes. |
To-do: revise resources, same for ensemble, add back non-LIAU option.
removed combined sfcanl jobs
| @@ -125,54 +122,23 @@ fi | |||
|
|
|||
| # Collect the dates in the window to update surface restarts | |||
| gcycle_dates=("${PDY}${cyc}") # Always update surface restarts at middle of window | |||
There was a problem hiding this comment.
[shfmt] reported by reviewdog 🐶
| gcycle_dates=("${PDY}${cyc}") # Always update surface restarts at middle of window | |
| gcycle_dates=("${PDY}${cyc}") # Always update surface restarts at middle of window |
|
|
||
| if [[ "${DO_GSISOILDA}" == "YES" ]]; then | ||
|
|
||
| # Collect the dates in the window to update surface restarts |
There was a problem hiding this comment.
[shfmt] reported by reviewdog 🐶
| # Collect the dates in the window to update surface restarts | |
| # Collect the dates in the window to update surface restarts |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
|
@DavidHuber-NOAA @CatherineThomas-NOAA I'd like to split up the esfc job before finalizing this PR (won't save any time, but is more consistent). Then I'd like to run the full suite of tests, in case I missed a specific combination of settings. I've run out a selection of tests for 24 hours, and the output is zero diff. Would you mind having a look through it to see if there are any deal-breakers in there for merging into v17? |
Changes to speed up the sfcanl and esfc jobs.
Merges in UFS_UTILS hash with updates to reduce file-copying and speed up the sfcanl jobs.
This update didn't have much impact on the timing, but it reduces the number of files, and removes copious (10,000s lines) of comments from global_cycle log files - worth keeping for these changes.
Updates to scripting with associated file name changes for the above hash update, and removal of a redundant option for global_cycle.
Split the sfcanl job into two separate jobs:
sfcanl_gcycle - to do the call to global_cycle (dependent on *_anal)
sfcanl_regrid - to regrid the soil increments from the gsi_enkf (depdendent on the gdas_enkf)
Splitting these also allows dependencies for the two jobs to be separated out. This is important as the gcycle part of the job takes much longer, but can be launched earlier as the analysis usually finishes before the enkf. From experiments on WCOSS2, we estimate that the forecast job can launch 3-4 minutes earlier with this change.
Changing this dependency means that the esfc job can start about 20 minutes earlier, removing it from the critical path. It has been taking 15-20 minutes. If I've traced the dependencies properly (big if, I didn't follow the marine analysis through), this will mean that the ensemble forecast can launch about 10 minutes earlier (once the ensemble re-centering is done).
Resolves issues 4655 and [4533] and (#4533)
The changes do not result in any changes to the output.
Type of change
Change characteristics
Is this change expected to change outputs (e.g. value changes to existing outputs, new files stored in COM, files removed from COM, filename changes, additions/subtractions to archives)? NO
Is this a breaking change (a change in existing functionality)? NO
Does this change require a documentation update? NO
Does this change require an update to any of the following submodules? YES
Above needs to be merged first.
How has this been tested?
Testing underway
Checklist