-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Problem
Make sure all the functions have variants "WITH_INFO" for which this makes sense.
Proposal
Check the collective API, starting with the GRAPH/CART APIs below, to see where WITH_INFO is missing but needed; add such APIs. In some cases, we might deprecate the prior meaning of the info argument instead (TBD per API).
Changes to the Text
MPI_GRAPH_CREATE_WITH_INFO
The "non-dist" graph constructor should be deprecated in favour of the newer (and better) "dist" version(s). Every call to MPI_GRAPH_CREATE can be legally and 'simply' replaced with a call to MPI_DIST_GRAPH_CREATE.
MPI_GRAPH_CREATE requires that each process passes the full (global) communication graph to the call. This limits the scalability of this constructor. With the distributed graph interface, the communication graph is specified in a fully distributed fashion.
In the absence of a proposal to deprecate MPI_GRAPH_CREATE (and thereby obviate the need to maintain/improve it), adding an MPI_INFO argument is one of the advisable changes/improvements.
MPI_CART_CREATE_WITH_INFO
The proposed cartesian topology "with info" constructor seems like a good addition but should probably be part of a more general change to add an MPI_INFO argument to all object constructors that don't already have one. For example, MPI_COMM_SPLIT_WITH_INFO makes a lot of sense too.
Impact on Implementations
Incremental APIs will need to be added; these are analogous to existing APIs and mechanisms to manage WITH_INFO already exist in other parts of the API.
Impact on Users
Describe the changes that will impact users here.