MPI_Type_create_hindexed_block function
Allows replication of an old datatype into a sequence of blocks (each block is a concatenation of the old datatype), where all blocks have the same block length but can have different block displacements in bytes.
Syntax
int MPIAPI MPI_Type_create_hindexed_block(
_In_ int count,
_In_ int blocklength,
_In_ MPI_Aint array_of_displacements[],
_In_ MPI_Datatype oldtype,
_Out_ MPI_Datatype *newtype
);
Parameters
count [in]
The number of blocks and the number of entries in the array_of_displacements parameter.blocklength [in]
The number of elements in each block.array_of_displacements [in]
The array containing the displacement of each block, in bytes.oldtype [in]
The MPI_Datatype handle representing the data type of each element.newtype [out]
On return, contains the MPI_Datatype handle representing a data type containing count copies of element blocks. Each block has blocklength elements. The displacement of each block is specified in array_of_displacements.
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_BLOCK(COUNT, BLOCKLENGTH, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
INTEGER COUNT, BLOCKLENGTH, OLDTYPE, NEWTYPE, IERROR
INTEGER(KIND=MPI_ADDRESS_KIND) ARRAY_OF_DISPLACEMENTS(*)
Remarks
This function is similar to the function MPI_Type_create_indexed_block except that the array of displacements contains the displacement of each block in bytes.
Requirements
Product |
Microsoft MPI v6 |
Header |
Mpi.h; Mpif.h |
Library |
Msmpi.lib |
DLL |
Msmpi.dll |