Fix xgrid reproducibility by using srcTermProcessing=0 for all xgrid FieldRegridStore calls #506
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 of changes
Use srcTermProcessing=0 for all xgrid FieldRegridStore calls.
This is needed for bit-for-bit reproducibility. Most of the calls to FieldRegridStore weren't setting srcTermProcessing at all; this can lead to irreproducibility of the results. Two of the calls had srcTermProcessing set to 1 before, which leads to reproducibility but (according to Gerhard Theurich) is often worse for performance than a value of 0.
Note that we use a value of 0 in the calls in med_map_mod.
Specific notes
Contributors other than yourself, if any: Guidance from @oehmke and @theurich
CMEPS Issues Fixed (include github issue #): Resolves #505
Are changes expected to change answers? YES: roundoff-level differences expected for runs with
aoflux_grid = "xgrid"
(but those runs had expected roundoff-level differences from run to run before this fix anyway)Any User Interface Changes (namelist or namelist defaults changes)? No
Testing performed
Please describe the tests along with the target model and machine(s)
If possible, please also added hashes that were used in the testing
In the context of cesm3_0_alpha03c, with the change here put on top of the change in #501, ran
REP_Ld2.ne30pg3_t232.BLT1850.derecho_intel.allactive-xgrid
, where thexgrid
testmod contained:include_user_mods:
user_nl_cpl: