-
Notifications
You must be signed in to change notification settings - Fork 52
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
Add support for inter-communication #86
Comments
Open
jedbrown
pushed a commit
that referenced
this issue
Dec 5, 2022
jedbrown
pushed a commit
that referenced
this issue
Dec 5, 2022
Explicitly disconnect parent communicator to appease MPICH leak checks, which might be incorrect. pmodels/mpich#6319 Co-authored-by: Jed Brown
jedbrown
pushed a commit
that referenced
this issue
Dec 19, 2022
Explicitly disconnect parent communicator to appease MPICH leak checks, which might be incorrect. pmodels/mpich#6319 Co-authored-by: Jed Brown
jedbrown
pushed a commit
that referenced
this issue
Dec 19, 2022
Explicitly disconnect parent communicator to appease MPICH leak checks, which might be incorrect. pmodels/mpich#6319 Co-authored-by: Jed Brown
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The code currently operates under the assumption that all communicators are intra-communicators, but inter-communicators have slightly different semantics that should be captured in the type system.
There are places we check the value of
MPI_Comm_size
for safety purposes, but should actually beMPI_Comm_remote_size
when dealing with an inter-communicator. Considering adding a routinefn target_size(&self) -> Rank
on theCommunicator
trait with no default implementation. Evaluates toself.size()
on intra-communicators andself.remote_size()
on inter-communicators.The proposed implementation would:
MPI_Intercomm_create
MPI_Intercomm_merge
I have related changes in the AndrewGaspar/intercomm branch, but I'll probably restructure that branches' changes and submit under a separate branch.
The text was updated successfully, but these errors were encountered: