[Mpi-forum] MPI_Type_create_struct vs. other datatype creation routines

Pavan Balaji balaji at mcs.anl.gov
Sat Aug 27 20:34:25 CDT 2011


Ok, that makes sense. It would have been good if the ones where offsets 
are specified in datatype lengths also took MPI_Aint, to allow for 
MPI_BOTTOM.

Using hindexed instead of indexed would have been OK, except the MPI 
implementation can optimize alignment checks for indexed (by checking 
only the first element), but can't do that for hindexed.

Also, are we missing hindexed_block in the standard?

  -- Pavan

On 08/27/2011 10:04 AM, Rajeev Thakur wrote:
> If the displacement is specified in multiples of the extent of oldtype, it is defined as int. If the displacement is specified in bytes it is defined as Aint.
>
> Rajeev
>
>
> On Aug 27, 2011, at 7:08 AM, William Gropp wrote:
>
>> Look at the Fortran binding - to create Fortran interfaces that used MPI_ADDRESS_KIND, we first had to *have* an MPI_ADDRESS_KIND, which is possible in Fortran 90 and later.  MPI-1 could only provide a Fortran 77 binding.
>>
>> Bill
>>
>> On Aug 27, 2011, at 6:03 AM, Pavan Balaji wrote:
>>
>>>
>>> No, that can't be right.
>>>
>>> MPI_Type_hindexed was in MPI-1, and it had MPI_Aint for displacement.
>>>
>>> MPI_Type_indexed on the other hand uses int.
>>>
>>> MPI_Type_struct in MPI-1 also used MPI_Aint.
>>>
>>> MPI_Type_create_indexed_block was added in MPI-2.1 (or 2.2?) and uses int.
>>>
>>> It all seems arbitrary to me.
>>>
>>> -- Pavan
>>>
>>> On 08/27/2011 05:18 AM, Jeff Squyres wrote:
>>>> An offhand guess: TYPE_CREATE_STRUCT was created in MPI-2, whereas the rest were created in MPI-1.
>>>>
>>>>
>>>> On Aug 27, 2011, at 3:54 AM, Pavan Balaji wrote:
>>>>
>>>>>
>>>>> Is there a reason why MPI_Type_create_struct was given the special privilege of using MPI_Aint to store displacements, while the remaining datatype creation routines use int? This would essentially disallow creation of a datatype as an offset to MPI_BOTTOM.
>>>>>
>>>>> -- Pavan
>>>>>
>>>>> --
>>>>> Pavan Balaji
>>>>> http://www.mcs.anl.gov/~balaji
>>>>> _______________________________________________
>>>>> mpi-forum mailing list
>>>>> mpi-forum at lists.mpi-forum.org
>>>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum
>>>>
>>>>
>>>
>>> --
>>> Pavan Balaji
>>> http://www.mcs.anl.gov/~balaji
>>> _______________________________________________
>>> mpi-forum mailing list
>>> mpi-forum at lists.mpi-forum.org
>>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum
>>
>> William Gropp
>> Director, Parallel Computing Institute
>> Deputy Director for Research
>> Institute for Advanced Computing Applications and Technologies
>> Paul and Cynthia Saylor Professor of Computer Science
>> University of Illinois Urbana-Champaign
>>
>>
>>
>> _______________________________________________
>> mpi-forum mailing list
>> mpi-forum at lists.mpi-forum.org
>> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum
>
>
> _______________________________________________
> mpi-forum mailing list
> mpi-forum at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum

-- 
Pavan Balaji
http://www.mcs.anl.gov/~balaji



More information about the mpi-forum mailing list