-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Problem
MPI 4.0 Section 7.2.1 on page 314 defines the invalid group handle MPI_GROUP_NULL. It includes the following advice to users stating:
Advice to users. MPI_GROUP_EMPTY, which is a valid handle to an empty group,
should not be confused with MPI_GROUP_NULL, which in turn is an invalid handle.
The former may be used as an argument to group operations; the latter, which is
returned when a group is freed, is not a valid argument. (End of advice to users.)
The sessions model introduced the new function MPI_Group_from_session_pset that returns MPI_GROUP_NULL if a passed pset name is not known. Example 11.9 shows its usage. In this example the variable wgroup is initialized with the value MPI_GROUP_NULL and passed to MPI_Group_from_session_pset later unmodified.
So there are two issues for me with this:
- Example 11.9 uses an invalid group handle as argument, which contradicts the advice to users in 7.2.1.
- With MPI 4.0
MPI_GROUP_NULLcan originate also from another function call, i.e.,MPI_Group_from_session_pset, so it is not only returned when a group is freed as stated in the Advice to users.
Impact on Implementations
- Clarify usage of
MPI_GROUP_NULL
Impact on Users
- Clarify usage of
MPI_GROUP_NULL
References and Pull Requests
MPI 4.0 Section 7.2.1, Section 7.3.2, and Example 11.9