Update to soca that significantly improves memory/runtime #1505
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This update goes with JCSDA-internal/soca#1130 that refactors data storage in soca, reduces memory footprint and more carefully handles halos and intermediate variables in soca states and increments.
The update in the gdas-utils here changes how we create an increment with a subset of variables, since assigning increments with different variables is now prohibited.
I ran both low- and high- res hybrid experiments and confirmed that all the tasks (bmat, envar, letkf, recenter, chkpt) behave as expected, and all the differences are explained (and are a sign of better code in the branch). The differences in the logs are: removal of some intermediate variables that were not used in some states; fixes of scrambled data in some intermediate variables. The netcdf output produced by all of those tasks is the same as with develop with the exception of ice.ssh_recentering_error files that are not used (it’s the ice files) but on develop have garbage in the ice variables.
Differences in runtime and memory (hera/intel, 0.25 degree case):
EnVar:
LETKF:
The soca tag will need to change once soca PR is merged.
Companion PRs
JCSDA-internal/soca#1130
Automated CI tests to run in Global Workflow