|
Boost Users : |
Subject: Re: [Boost-users] [mpi] irecv / send problem
From: Jeremiah Willcock (jewillco_at_[hidden])
Date: 2009-07-01 23:11:50
On Wed, 1 Jul 2009, tom fogal wrote:
> Nick Collier <nick.collier_at_[hidden]> 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
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net