Re: VOLATILE, Re: draft, one sided for next meeting

Marc Snir (snir@watson.ibm.com)
Wed, 28 Feb 1996 10:08:56 -0500

:-) :-) :-) *** (:- (:- (:-

.....
> > If this is not so, then blocking and nonblocvking send and
> > receives will not work as well.
>
> In blocking operations there is no problem.

In blocking operations there is exactly the same problem as for nonblocking.
The user calls MPI_SEND(buff, ...). The send buffer may include any variable
in the memory of the sender, at an arbitrary displacement from buff. The
compiler will store buff back in memory, but may not store other variables,
that are totally unrelated to buff, but happen to be in the send buffer. (In
fact, buff may be MPI_BOTTOM, and the send buffer can still contain any
variable in the caller memory. If so, the send routine may pick from memory
obsolete values for some of the variables.

Marc Snir
IBM T.J. Watson Research Center
P.O. Box 218, Yorktown Heights, NY 10598
email: snir@watson.ibm.com
phone: 914-945-3204
fax: 914-945-4425
URL: http://www.research.ibm.com/people/s/snir