[Mpi-forum] MPI_Mprobe workaround
N.M. Maclaren
nmm1 at cam.ac.uk
Fri Jul 13 15:01:20 CDT 2012
On Jul 13 2012, Jeff Hammond wrote:
>
>There is no known workaround that addresses all of the problems with
>MPI Probe and MPI Iprobe in multi-threaded MPI applications.
>
>Are there nuances regarding the use of MPI that I have missed? Do the
>real-world use cases have too much to do in the "/* ? */" to make this
>viable?
Quite a lot do. Anything with lazy execution may handle any outstanding
operations, and anything with eager execution may do the transfer in the
Irecv. Not all I/O transports support asynchronicity.
But, realistically, anyone who goes beyond MPI_THREAD_FUNNELED is writing
non-portable code, because MPI specifies more than can be implemented
using what POSIX actually defines. Inter alia, POSIX does not define any
mechanism for synchronising signals between threads, and I have exposed
inconsistencies. Just like passive one-sided communication.
But I agree that it should be viable on at least some systems, some MPIs
and some transports.
Regards,
Nick Maclaren.
More information about the mpi-forum
mailing list