[mpich2-dev] MPIR_Localcopy()

Rajeev Thakur thakur at mcs.anl.gov
Mon Aug 11 21:14:47 CDT 2008


David,
       MPIR_Localcopy was implemented in 2002, when ch3 was the only 
device, and a local sendrecv did no communication. So the expedient (or 
lazy) thing to do was to call a local sendrecv when the datatypes are 
noncontiguous. You are right that now it might be better to be less lazy 
and call the segment functions directly.

Rajeev


David Gingold wrote:
> MPIR_Localcopy() calls MPIC_Sendrecv().  Is there any reason to do that 
> other than, "Wasn't that easy to implement?"
> 
> Yes, my question is a thinly veiled gripe.  :^)  The side-effects of 
> caling Sendrecv threw me for a loop by causing messaging when I least 
> expected it.  But it seems not so hard to implement Localcopy with 
> MPID_Segment_{pack,unpack}(), even in the both non-contiguous case.  
> Wouldn't that be better?
> 
> -dg
> 




More information about the mpich2-dev mailing list