Well, I see it this way: If you intend to send messages between hosts that have
different sized ints, or longs, or whatever...you're living very dangerously,
and it's not obvious to me that MPI should be the one to handle the inherent
nastiness of doing this. Let's say that I have an array of 64-bit ints and I
want to send it to a machine that only supports 32-bit ints. What happens to
those extra bits? MPI certainly can't do the right thing in this case in
general, so it's up to the application to adjust.
For gets and puts, which I claim are more of a shared memory abstraction than a
message passing abstraction, the issue of different datatype sizes becomes even
messier. What does it even mean to "put" a 64-bit int into the address space of
a machine that only supports 32-bit ints? I claim that this is completely bogus
and we shouldn't waste our time trying to make it work; it will only add
complexity to what *should* be a very simple interface.
> I think, in the future, heterogenous means often a mixture of
> 64 bit and 32 bit architectures (the era that only Cray has
> a 64 bit architecture is over).
I agree 100%. I just don't think that MPI all by itself will be able to solve
the gotchas involved in mixing such machines.
-- Eric Salo Silicon Graphics Inc. "Do you know what the (415)933-2998 2011 N. Shoreline Blvd, 7L-802 last Xon said, just salo@sgi.com Mountain View, CA 94043-1389 before he died?"