Edit

Share via


MPI_Type_create_hindexed function

Defines a new data type that consists of a specified number of blocks of arbitrary size. Each block is a concatenation of elements of an existing data type. Each block can contain a different number of elements and have a different displacement.

Syntax

int MPIAPI MPI_Type_create_hindexed(
        int                        count,
        _In_count_(count) int      array_of_blocklengths[],
        _In_count_(count) MPI_Aint array_of_displacements[],
        MPI_Datatype               oldtype,
  _Out_ MPI_Datatype               *newtype
);

Parameters

  • count
    The number of blocks and the number of entries in the array_of_blocklengths and array_of_displacements parameters.

  • array_of_blocklengths
    The number of elements of each block.

  • array_of_displacements
    The displacement of each block in bytes.

  • oldtype
    The MPI data type of each element.

  • newtype [out]
    On return, contains an MPI_Datatype handle that represents the new data type.

Return value

Returns MPI_SUCCESS on success. Otherwise, the return value is an error code.

In Fortran, the return value is stored in the IERROR parameter.

Fortran

    MPI_TYPE_CREATE_HINDEXED(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
        COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR

Remarks

This function replaces the MPI_Type_hindexed, which is deprecated.

Requirements

Product

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package or HPC Pack 2008 Client Utilities

Header

Mpi.h; Mpif.h

Library

Msmpi.lib

DLL

Msmpi.dll

See also

MPI Datatype Functions

MPI_Type_indexed