Newsgroups: comp.parallel.pvm,comp.parallel.mpi
From: Stephen Barnard <steve@megafauna.com>
Reply-To: steve@megafauna.com
Subject: Re: PVM send buffers
Organization: megafauna
Date: Sat, 30 Mar 1996 06:45:12 -0800
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <315D48F8.1A32@megafauna.com>

Richard Barrett wrote:
[snip]
> Our problem is that even though our code is portable, our target machine these
> days is a Cray T3D. Message passing is built on top of its shmem stuff, so
> sends are not safe (i.e. the send returns before all the data has been sent
> to the target process). So we're experimenting with MPI_Wait (blocks until the
> data has been sent vs. the buffering scheme. And as usual, this will be
> MPI implementation dependent as well as problem dependent.
> 
> Richard
> 

My understanding of shmem (and I've used it a lot) is that a shmem_put 
returns after the data has been injected into the network, and it is then 
OK to reuse the send buffer.  Isn't this safe?  Doesn't this correspond to 
a blocking MPI send?  I have converted shmem codes on the T3D more-or-less 
directly to MPI with no problems.

Possibly you are confusing the notion that "shmem_put isn't safe" with the 
correct statement that "shmem_put doesn't enforce cache coherence," but 
there is an easy fix for this. 

	Steve Barnard

