Draft
Conversation
This includes splitting a long do loop on iCell so an if condition on rk_step is outside the do loop. Though this condition shouldn't lead to warp divergence, it can still be helpful to do branch evaluation on the device best suited for it (the CPU). Since there was also limited data re-use in the long do loop, it may help to reduce kernel launch overhead. Also line up whitespace so the bdyMaskCell if condition is apparent and clean up some lines that end with whitespace.
…work This commit adds an initial port of this routine using OpenACC. More changes are needed to improve performance.
This commit ensures the invariant fields used during this work routine are present on the device from model startup to model shutdown. It builds on the changes in PR MPAS-Dev#1176 to copyin invariant fields during mpas_atm_dynamics_init and delete them from the device during mpas_atm_dynamics_finalize.
These changes ensure that the other, non-invariant, fields are available on the device during this routine. Some fields that are overwritten are only created at the beginning, while others are copied in. Any fields that were unmodified right-hand side fields are deleted at the end and modified left-hand side fields are copied out. Timing for these transfers are reported in the output log file in the new timer: 'atm_recover_large_step_variables [ACC_data_xfer]'.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Steps to use the python scripts for comparison
link to hackmd page with more info: https://hackmd.io/uT-W_PEhTSWXZI7YkS0wWA