On Apr 2, 2018, at 1:39 PM, dpchoudh . <dpcho...@gmail.com> wrote: > > Sorry for a pedantic follow up: > > Is this (heterogeneous cluster support) something that is specified by > the MPI standard (perhaps as an optional component)?
The MPI standard states that if you send a message, you should receive the same values at the receiver. E.g., if you sent int=3, you should receive int=3, even if one machine is big endian and the other machine is little endian. It does not specify what happens when data sizes are different (e.g., if type X is 4 bits on one side and 8 bits on the other) -- there's no good answers on what to do there. > Do people know if > MPICH. MVAPICH, Intel MPI etc support it? (I do realize this is an > OpenMPI forum) I don't know offhand. I know that this kind of support is very unpopular with MPI implementors because: 1. Nearly nobody uses it (we get *at most* one request a year to properly support BE<-->LE transformation). 2. It's difficult to implement BE<-->LE transformation properly without causing at least some performance loss and/or code complexity in the main datatype engine. 3. It is very difficult for MPI implementors to test properly (especially in automated environments). #1 is probably the most important reason. If lots of people were asking for this, MPI implementors would take the time to figure out #2 and #3. But since almost no one asks for it, it gets pushed (waaaaaay) down on the priority list of things to implement. Sorry -- just being brutally honest here. :-\ > The reason I ask is that I have a mini Linux lab of sort that consists > of Linux running on many architectures, both 32 and 64 bit and both LE > and BE. Some have advanced fabrics, but all have garden variety > Ethernet. I mostly use this for software porting work, but I'd love to > set it up as a test bench for testing OpenMPI in a heterogeneous > environment and report issues, if that is something that the > developers want to achieve. Effectively, the current set of Open MPI developers have not put up any resources to fix, update, and maintain the BE<-->LE transformation in the Open MPI datatype engine. I don't think that there are any sane answers for what to do when datatypes are different sizes. However, that being said, Open MPI is an open source community -- if someone wants to contribute pull requests and/or testing to support this feature, that would be great! -- Jeff Squyres jsquy...@cisco.com _______________________________________________ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users