I agree. My original posting explained more of the details, but I'll try to
come up with a formal description of the exact semantics before the next
> Is the assumption that data layout is the same at the source and the
> destination of the put or get?
Within any particular MPI datatype, yes.
> Are these calls supposed to work in a heterogeneous environment as well?
That depends on exactly how you define heterogeneous. For now, I'm assuming
that datatypes used in puts and gets will occupy the same amount of space. So,
if I have a 32-bit integer on one host and I wish to "put" it into the memory
of a remote process, the integer on that remote host should also occupy 32
bits. This extends to more complicated types as well. In my opinion, if we can
come up with an interface that supports at least this degree of heterogeneity,
we will have done well. I would argue that worrying about more than that now is
premature, let's make sure we know how to crawl before we try to walk.
> Can arbitrary datatypes be used?
Subject to the atomicity restraint, yes. Atomicity is a very nasty issue...
-- Eric Salo Silicon Graphics Inc. "Do you know what the (415)933-2998 2011 N. Shoreline Blvd, 7L-802 last Xon said, just email@example.com Mountain View, CA 94043-1389 before he died?"