MPI_Type_indexed 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_indexed(
int count,
_In_count_(count) int *array_of_blocklengths,
_In_count_(count) int *array_of_displacements,
MPI_Datatype oldtype,
_Out_ MPI_Datatype *newtype
);
Parameters
count
The number of blocks and the number of elements in the array_of_blocklengths and array_of_displacements parameters.array_of_blocklengths
The number of elements of each individual block.array_of_displacements
The displacement of each individual block in bytes. All block displacements must be a multiple of the extent of the data type as specified in the oldtype parameter.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_INDEXED(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR
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 |