
2 Jul
2009
2 Jul
'09
3:11 a.m.
On Wed, 1 Jul 2009, tom fogal wrote:
Nick Collier
writes: I running into an issue where an irecv followed by a send results in deadlock. A simple test case, [snip] int other = world.rank() == 0 ? 1 : 0; cout << world.rank() << " irecv from " << other << endl; receipt.request = world.irecv(other, 0, receipt.items); cout << world.rank() << " sending to " << other << endl; world.send(other, 0, msg); [snip]
Does this even work with non-boost MPI? My reading (skimming) of the MPI spec does not generate the implication that synchronous sends can be asynchronously received.
They can -- see the seventh paragraph of http://www.mpi-forum.org/docs/mpi21-report-bw/node55.htm just before "Advice to users". -- Jeremiah Willcock