-
Notifications
You must be signed in to change notification settings - Fork 936
Fix the info subscriber mechanism and hidden info keys #12498
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
Conversation
75c3ffa to
cdda311
Compare
|
I verified that with this PR, HAN's info keys are properly propagated to the subcommunicators. |
bosilca
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The need for this PR arise because the info code, lacking documentation, was misunderstood and capabilities were mistakenly removed. For the sake of future OMPI developers we need to properly document these changes.
opal/util/info.c
Outdated
| info_entry_destructor); | ||
|
|
||
| /* | ||
| * Duplicate an info |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a major change, it deserves better documentation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
| return OPAL_SUCCESS; | ||
| } | ||
|
|
||
| int opal_info_dup_public(opal_info_t *info, opal_info_t **newinfo) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Move these into a header file and make them always inline.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm hesitant about this since there are no other implementations in info.h. The call to opal_info_dup_impl will be a jmp so there is little to gain from inlining these.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A call into a function that does a simple jmp ? I don't even see the interest of having these functions, with a weird name, instead of just using opal_info_dup with all 3 arguments.
cdda311 to
cfac60e
Compare
Signed-off-by: Joseph Schuchart <[email protected]>
cfac60e to
158e54c
Compare
PR #9246 was overzealous in dropping keys, which broke
MPI_[Comm|Win|File]_set_info. Also, @wenduwan noted in #11823 that info keys are not properly propagated to subcommunicators in HAN. The root cause is that keys are not kept if there were no subscribers.This PR makes the following changes:
__IN_prefix to the key, now it's a flag). Internal keys are not handed back to the user inMPI_[Comm|Win|File]_get_info.