-
Notifications
You must be signed in to change notification settings - Fork 194
Make marine recentering task run in parallel to bmat task #3805
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Make marine recentering task run in parallel to bmat task #3805
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
The PR updates the marine ensemble recentering workflow so that the ocnanalecen
task runs in parallel with the bmat task and adds the appropriate dependency to the marine analysis checkpoint task (marineanlchkpt
). Key changes include:
- Modifying
ocnanalecen
dependencies to use ocean history data and theenkfgdas_fcst
metatask instead of waiting onmarineanlvar
. - Adjusting
marineanlchkpt
to always depend onmarineanlvar
and conditionally onocnanalecen
. - Simplifying dependency creation in
marineanlfinal
by removing the explicitdep_condition
.
Comments suppressed due to low confidence (1)
dev/workflow/rocoto/gfs_tasks.py:817
- [nitpick] Update this comment to indicate that
ocnanalecen
now runs in parallel with bothmarinebmat
and theenkfgdas_fcst
metatask, so its intent matches the implemented dependencies.
# can run in parallel with marinebmat
if self.options['do_hybvar_ocn']: | ||
dep_dict = {'type': 'task', 'name': f'{self.run}_ocnanalecen'} | ||
else: | ||
dep_dict = {'type': 'task', 'name': f'{self.run}_marineanlvar'} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this also mean that marineanlchkpt
will run in parallel with marineanlvar
for non-hybrid cases?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently in develop, marineanlvar
runs in both deterministic and ensemble setups, and inserts ocnanalecen
serially after marineanlvar
only with do_hybvar_ocn
, so marineanlchkpt
depends on either one or the other according to do_hybvar_ocn
. The PR will have them run in parallel, so marineanlchkpt
will depend on marineanlvar
in every case, and ocnanalecen
in addition to marineanlvar
with do_hybvar_ocn
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple questions/suggestions:
- does
ocnanalecen
copy/link ensemble forecasts? checking that it's not relying onbmat
job to do that copying/linking. - I think
marineanlchkpt
doesn't need to depend onocnanalecen
since recentering only recenters the ensemble forecasts around a deterministic forecast. Perhaps the dependency could be for the ensemble forecast for this cycle onocnanalecen
.
|
Interesting, I wouldn't expect anything in |
Perfect! |
I'll re-run without the second dependency and have |
I cloned the branch for the PR and compared XML files between two v17-like experiments. The differences I see align with what I would expect from the code changes:
@AndrewEichmann-NOAA : Do you still have changes to make with regards to the chkpt task? |
@CatherineThomas-NOAA I am setting up a test to see if |
@CatherineThomas-NOAA @shlyaeva I ran |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hooray! I think to be safe we also need a dependency of ensemble forecast on the recentering, since the recentering saves mom6 increments and cice restarts that are used in the ensemble forecast.
@shlyaeva Do you mean something parallel to the dependency on
I'd note that the dependency of |
I don't know for sure, I don't really know which task is which here. Maybe someone with experience in these tasks can comment.
It's fine with me to rollback to having dependency of marineanlchkpt on ocnanalecen if everyone agrees. |
@shlyaeva @DavidHuber-NOAA @CatherineThomas-NOAA Any opinions on this? |
Having |
Correct. This dependency already exists in the workflow, so no need to add it in this PR. @AndrewEichmann-NOAA : I think it's safer for now to roll back the |
Description
Changes marine DA ensemble recentering task to run in parallel to marine bmat task, from one after the other. Also
addsremoves conditional dependency to recentering task to marine analysis checkpoint task, which was previouslyunneededrequired with the serial dependency. This is to alleviate an unnecessary bottleneck between long-running tasks.Resolves #3835 (Originally NOAA-EMC/GDASApp#1665)
Type of change
Change characteristics
How has this been tested?
C96C48mx500_S2SW_cyc_gfs
on HeraChecklist