[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Fw: [bgl-discuss] MPI failure, simplified



Excellent idea.  I don't know who the developer was or how to contact
him/her, but maybe someone else does.  Whoever they are, it's going to
be hard for them to maintain their argument that "safe = receives
always posted before matching sends" in the light of that clear and
unambiguous excerpt from the Standard.

-Steve


On Mon, 8 May 2006, Rajeev Thakur wrote:

> One thing we could do is forward this example to the IBM developer who
> replied to the PMR.
> 
> Rajeev 
> 
> > -----Original Message-----
> > From: Stephen Siegel [mailto:siegel@xxxxxxxxxxxx] 
> > Sent: Monday, May 08, 2006 7:13 AM
> > To: Rajeev Thakur
> > Cc: discuss@xxxxxxxxxxxxxxx
> > Subject: Re: Fw: [bgl-discuss] MPI failure, simplified
> > 
> > 
> > On Sat, 6 May 2006, Rajeev Thakur wrote:
> > 
> > > I was looking up something else in the MPI Standard when I 
> > came across this
> > > example under "Semantics of point-to-point communication". 
> > Example 3.7, pg
> > > 32, MPI-1.1.
> > > It says:
> > > 
> > > "Example 3.7 An exchange of messages.
> > > 
> > > CALL MPI_COMM_RANK(comm, rank, ierr) 
> > > IF (rank.EQ.0) THEN 
> > >     CALL MPI_SEND(sendbuf, count, MPI_REAL, 1, tag, comm, ierr) 
> > >     CALL MPI_RECV(recvbuf, count, MPI_REAL, 1, tag, comm, 
> > status, ierr) 
> > > ELSE    ! rank.EQ.1 
> > >     CALL MPI_RECV(recvbuf, count, MPI_REAL, 0, tag, comm, 
> > status, ierr) 
> > >     CALL MPI_SEND(sendbuf, count, MPI_REAL, 0, tag, comm, ierr) 
> > > END IF 
> > > 
> > > This program will succeed even if no buffer space for data 
> > is available." 
> > > 
> > > 
> > > Note that it does not put any restriction on the size of 
> > the sendbuf. It
> > > says the program will succeed even if there is no buffer 
> > space available.
> > > 
> > > Going by this, I would say that the Standard says that 
> > Steve's code should
> > > work.
> > 
> > I agree! (But can anyone convince IBM?)  -Steve
> > 
> > 
> 

- --------------------------------------------------------------------
To add or remove yourself from this mailing list, use the 'notifyme'
command on any BGL machine. To remove: notifyme -n, to add: notifyme -y.