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

prov/gni: allow NULL desc in read|write{v,msg} #6593

Merged
merged 1 commit into from
Apr 3, 2021

Conversation

minsii
Copy link
Contributor

@minsii minsii commented Feb 24, 2021

Libfabric allows relaxed enforcement of local MR registration thus the user can choose to skip local buffer registration when issuing an RMA. The current code, however, requires a pointer to a NULL pointer for such a case, which is inconvenient to user. This patch allows a NULL pointer to be directly passed.

Background about why we propose this change:

  • In MPICH, we always skip local buffer registration and rely on the underlying provider performs necessary operation. Thus, we specify msg.desc=NULL when using fi_readmsg|writemsg.
  • GNI can automatically register the local buffer if desc is not provided by user but it still requires a non-NULL desc to be passed (e.g., desc[0] = NULL). It will be more convenient to user if it accepts a NULL pointer directly.

I don't see a clear description in the spec about the required format of desc field in struct fi_msg_rma. Please let me know if our usage is wrong. We need to figure out a consistent way to specify NULL desc that can be supported by all providers.

Libfabric allows relaxed enforcement of local MR registration thus the
user can choose to skip local buffer registration when issuing an RMA.
The current code, however, requires a pointer to a NULL pointer for such
a case, which is inconvenient to user. This patch allows a NULL pointer
to be directly passed.

Signed-off-by: Min Si <msi@anl.gov>
@minsii
Copy link
Contributor Author

minsii commented Feb 24, 2021

I tested the patch with MPICH on NERSC/Cori. I don't know if there is a standalone libfabric test suite that need to be tested. Could you please explain the testing method to me if I need to run more tests offline?

@shefty
Copy link
Member

shefty commented Apr 2, 2021

@hppritcha -- can you review this PR?

@shefty
Copy link
Member

shefty commented Apr 2, 2021

@jswaro - This PR might be relevant to you as well.

@hppritcha hppritcha self-requested a review April 3, 2021 15:02
@hppritcha
Copy link
Contributor

looks good to me. not sure about the travis problem.

@shefty shefty merged commit 3807089 into ofiwg:master Apr 3, 2021
@shefty
Copy link
Member

shefty commented Apr 3, 2021

thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants