[Mpi-22] determine if running in a heterogenous environment
Jeff Squyres
jsquyres at [hidden]
Mon Mar 3 12:24:11 CST 2008
On Mar 3, 2008, at 12:54 PM, Dries Kimpe wrote:
>> Narrowing the scope to "whether translation functionality is
>> required"
>> is good. But note that whether the translation functionality is used
>> may be specific to a given (communicator,peer,datatype) tuple.
>
> You're right that this depends on the communicator and on the peer;
...and the datatype.
> It would not be uncommon to have one 'different (memory representation
> wise)' node in the communicator. This could be a login node, a
> visualisation node, ...
>
> So, from a performance point of view (and also for the mpi
> implementation
> internally), it's actually better to record this information for
> (communicator, source, dest). However, my main reason for this
> proposal
> was to enable an application that doesn't care about datatypes
> (might be
> more common than you'd think, looking at some of the mpi-subset
> ideas) to
> abort execution if it detects that data conversion is needed when
> communicating to its peers.
My point is that some datatypes may require translation while others
may not. It's not always just endian differences -- sometimes there's
floating point representation differences, or size differences (e.g.,
sizeof(int) != sizeof(int)).
--
Jeff Squyres
Cisco Systems
More information about the Mpi-22
mailing list