Skip to content
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

Fix non-blocking communication for adaptive time step #296

Merged
merged 6 commits into from
Jan 8, 2021

Conversation

SeverinDiederichs
Copy link
Member

@SeverinDiederichs SeverinDiederichs commented Jan 8, 2021

This PR resolves #288.
Previously, the last rank would send the new time step to the first rank. However, because the first rank is n_rank_z time steps ahead of the last rank, the last rank needs to send the data only if its time step is below max_step - n_rank_z - 1.

With this fix, the warning from #288 disappears.

Additionally, the non-blocking send is finished in the next time step and not in the + n_rank_z time step.

  • Small enough (< few 100s of lines), otherwise it should probably be split into smaller PRs
  • Tested (describe the tests in the PR description)
  • Runs on GPU (basic: the code compiles and run well with the new module)
  • Contains an automated test (checksum and/or comparison with theory)
  • Documented: all elements (classes and their members, functions, namespaces, etc.) are documented
  • Constified (All that can be const is const)
  • Code is clean (no unwanted comments, )
  • Style and code conventions are respected at the bottom of https://github.com/Hi-PACE/hipace
  • Proper label and GitHub project, if applicable

Severin Diederichs added 2 commits January 8, 2021 13:29
…teps and last rank sends only data if first rank is still requiring it
@SeverinDiederichs SeverinDiederichs added the bug Something isn't working label Jan 8, 2021
Co-authored-by: MaxThevenet <maxence.thevenet@desy.de>
Copy link
Member

@MaxThevenet MaxThevenet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, thanks!

@SeverinDiederichs SeverinDiederichs merged commit 08e5ba7 into development Jan 8, 2021
@SeverinDiederichs SeverinDiederichs deleted the fix_adaptive_time_step_communication branch January 8, 2021 14:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Warning in communication of adaptive time step information
2 participants