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

Use MPIX_RMA_abs routines to avoid dest disp translation #64

Closed
wants to merge 1 commit into from

Conversation

minsii
Copy link
Collaborator

@minsii minsii commented Aug 22, 2020

Remaining work for this PR:

  • Implement abs version for other AMO/RMA routines
  • If the base address of heap and global data on all processes is not symmetric, directly using local dest in put/get is wrong! We should enable it only when it is symmetric, or store base offsets as fallback. In current code, it simply assumes it is symmetric.

Note: a later commit for dynamic window will largely refactor the code. The above bug will also be addressed. Do not merge before that commit!

@minsii minsii added the PR WIP Prepare PR with production code based on prototype label Aug 22, 2020
@hzhou hzhou self-assigned this Sep 1, 2020
Set --enable-mpix-rma-abs=auto to enable this optimization. If
MPIX_Put|Get_abs are not found at configure time, fallback to
original version.

Note that for now we support only MPIX_Put_abs and MPIX_Get_abs in
contiguous put/get. When abs is enabled, the info "rma_abs" is set to
both symm windows with the assumption that only put/get will be used.
As next step, we should provide the abs version for all RMA/AMO.

Info "rma_abs" allows the window to adjust the internal base address to
eliminate extra displacement translation for network that requires
relative offset (e.g., ofi/psm2).

FIXME: if the base address of heap and global data on all processes is
not symmetric, directly using local dest in put/get is wrong! We should
enable it only when it is symmetric, or store base offsets as fallback.

** later commit will refactor and fix this code. Do not merge before
that commit!
@minsii
Copy link
Collaborator Author

minsii commented Nov 18, 2020

Close the PR. Because we discussed that the code might become too complex to maintain while the performance benefit is minor. May revisit in future.

@minsii minsii closed this Nov 18, 2020
@minsii minsii deleted the pr/rma-abs branch November 18, 2020 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR WIP Prepare PR with production code based on prototype
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Optimize destination virtual address translation by using extended MPIX_RMA_ABS routines
2 participants