On Nov 5, 2012, at 10:13 AM, Ralph Castain wrote:

> We adhere to the MPI standard, so we expect the user in such an instance to 
> define a datatype that reflects the structure they are trying to send. We 
> will then do the voodoo to correctly send that data in a heterogeneous 
> environment, and pass the data back (in the defined datatype) to the user on 
> the remote end. They can then put the various items back into their structure.
> 
> I'm not sure what you mean by an "ideal style language". See the MPI standard 
> or our doc page, for example
> 
> http://www.open-mpi.org/doc/v1.6/man3/MPI_Type_create_struct.3.php
> 
> for an explanation of how one defines a datatype.

To expand on that, you might want to see some trivial MPI programs that sent 
native types around (i.e., no datatype construction required).  For example:

  https://svn.open-mpi.org/trac/ompi/browser/trunk/examples/ring_c.c

Note, too, that MPI implementations (Open MPI included) typically don't 
"marshall" when they don't have to, meaning that we'll send directly from the 
user's buffer when possible (e.g., sending contiguous buffers in homogeneous 
situations).

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to