Open RolfRabenseifner opened 1 year ago
This seems more than an errata to me.
@wesbland I expect that this is definitely tooo late for MPI-4.1 because it requires an errata vote. To which repo should I write the PR?
This can still be an errata for MPI 4.1. It will just get added after the document is published.
So make the PR against the mpi-4.x branch and we can schedule a reading at the next meeting for it.
@GuillaumeMercier I would like to hand it over to you. Is this okay for you? Open questions etc. are at the PR.
@GuillaumeMercier I would like to hand it over to you. Is this okay for you? Open questions etc. are at the PR.
Yes, it's ok.
Thank you - hereby handed over to you @GuillaumeMercier
Problem
From MPI-1.1 to MPI-2.2 the tag argument had a understandable description:
For MPI-3.0, the MPI forum decided to remove the restriction
The goal was that the tags for point-to-point communication and for intercomm-creation should no longer interfer.
Starting with MPI-3.0 the technical implementation of this decision was that the whole last paragraph plus Advice to users was completely removed. Therefore, the whole procedure description is in MPI-3.0 until MPI-4.1 only:
This means, there is no description about the tag:
And I additionally cannot understand why the tag description
does not say
The examples listed at hotexamples were not really useful for me: https://cpp.hotexamples.com/examples/-/-/MPI_Intercomm_create/cpp-mpi_intercomm_create-function-examples.html
Proposal
A) Because the calls are collective over the union of local and remote groups, the tags are not needed for matching between the processes within the local or remote group. Therefore the use of the tag can be restricted the leaders of the groups:
The rule can be:
B) I expect that A) was the original intention, because in MPI-1.1 until MPI-2.2, the tag was only usable on the peer_comm. But now, the main use is for concurrent calls and therefore, we should have it as in all the related APIs: MPI_COMM_CREATE_GROUP, MPI_COMM_CREATE_FROM_GROUP, and MPI_INTERCOMM_CREATE_FROM_GROUPS
Therefore, I propose to only add:
Changes to the Text
See pull request PR 878
Impact on Implementations
None, because this describes what was intended by the change in MPI-3.0.
Impact on Users
None.
References and Pull Requests
https://github.com/mpi-forum/mpi-standard/pull/878