[Mpi-forum] MPI "Allocate receive" proposal

David Goodell (dgoodell) dgoodell at cisco.com
Tue Aug 27 18:24:07 CDT 2013

On Aug 27, 2013, at 2:33 AM, Rolf Rabenseifner <rabenseifner at hlrs.de> wrote:

>> Note that the type matching rules for send-receive say that MPI_BYTE
>> matches only MPI_BYTE, not MPI_INT/FLOAT, or other type (pg 33-34). So
>> this function would have to take a datatype argument, otherwise it
>> would match only sends of bytes.

Or we could relax those rules to permit Arecv to match any typed or untyped send.  The type matching rules in the standard don't actually match the way that existing implementations operate, nor do they match with any hardware I've ever heard of.

> See 2) in my previous email. I would propose to add an etype.

Any time a noncontiguous "etype" is posted this will likely force a copy on the receiver that could otherwise be avoided by posting contiguous bytes instead.

I suppose that we would define any holes in the buffer described by the etype to have undefined values after the Arecv call completes?  If we permit etypes, why not permit arbitrary types as well?  Is there a good reason for the monotonic non-decreasing requirement?


More information about the mpi-forum mailing list