mpi-forum / mpi-issues

Tickets for the MPI Forum
http://www.mpi-forum.org/
67 stars 8 forks source link

Query Requests for its flavor or kind #836

Open dalcinl opened 8 months ago

dalcinl commented 8 months ago

Problem

Requests are created with different "flavors" or "kinds"

Some of the Request-related routines deal with only a specific flavors of requests, for example:

Currently, there is no mechanism to query a request handle for its "flavor" or "kind". This is asymmetric with communicators and windows:

Knowing the flavor or category of a request is useful in object-oriented (e.g. C++) and/or high-level (e.g. Python) languages to wrap a raw C MPI handle value to some higher level type or class encapsulating the handle. The class may be specific to the kind of request. Examples: The removed C++ bindings had Request and Prequest classes. mpi4py borrowed the C++ convention to expose Request and Prequest classes. Java MPI bindings also have Request and Prequest classes.

Proposal

Add a mechanism to query Request handles for its flavor or kind, mainly consisting of

Changes to the Text

TBD

Impact on Implementations

Implementations must implement a new MPI routine and add new enum/state values to mpi.h. The request flavor is most likely already available to implementations as an internal property of the concrete request object.

Impact on Users

There are no backward compatibility implications for MPI API or existing MPI ABIs.

References and Pull Requests

TBD