[mpich-discuss] RMA calls with MPI Datatypes using structs

Rob Latham robl at mcs.anl.gov
Wed May 25 11:07:14 CDT 2016



On 05/25/2016 10:40 AM, Palmer, Bruce J wrote:
> Hi,
>
> I’ve been trying to implement code using MPI_Get and MPI_Put that move
> around data using MPI_Datatypes. If I create the data type using
> MPI_Type_create_subarray, everything works fine. If I create the data
> type using MPI_Type_create_struct then I get a failure if the amount of
> data I’m moving around becomes large.  At the moment the crossover point
> is moving a total of a million doubles on 8 cores (125000 doubles per
> core), which doesn’t seem to be excessively large. The error I’m seeing
> on a Linux cluster using and Infiniband interconnect is
>
> Assertion failed in file
> ./src/mpid/ch3/channels/nemesis/include/mpid_nem_inline.h at line 406
>
> : MPID_NEM_MPICH_DATA_LEN - buf_offset >= ext_hdr_sz
>
> internal ABORT - process 1
>
> Note that the same code runs fine if the data type is created using the
> subarray call. It looks like some internal limit is being exceeded, but
> if so, I think the threshold may be set a bit on the low side. Does
> anyone know more about this?

Doesn't look like something we've seen before.   Can you send us the 
working subarray and non-working struct datatype?
_______________________________________________
discuss mailing list     discuss at mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss


More information about the discuss mailing list