LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Brian Barrett (brbarret_at_[hidden])
Date: 2006-08-31 17:52:24


On Thu, 2006-08-24 at 20:16 -0500, Ganesh Bikshandi wrote:
> Hi,
>
> I have some problem with using MPI_Alltoallv and strided data type. I
> look at the implementation of MPI_Alltoallv and it does the following:
> psnd = ((char *) sbuf) + (sdisps[i] * sndextent);
>
> Is this a bug? Shouldn't it multiply by (sizeofdatatype * stride) ? Or
> I am missing something?
> Please help me how to use MPI_Alltoallv with a strided data type.

sndextent is (summarizing a bit) the distance between two consecutive
datatypes. So if it's an MPI_INT, generally the extent is the size of
the datatype. For something with padding requirements, it's the size of
the datatype, plus the padding. And it can get arbitrarily complex from
there, if you do really funky things with the MPI datatype engine.

Brian