MPI_Type_create_hindexed_block 函数
允许将旧数据类型复制到块序列中, (每个块都是旧数据类型) 的串联,其中所有块具有相同的块长度,但可以具有不同的块位移(以字节为单位)。
语法
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
);
参数
count [in]
array_of_displacements 参数中的块数和条目数。blocklength [in]
每个块中的元素数。array_of_displacements [in]
包含每个块的位移的数组(以字节为单位)。oldtype [in]
表示每个元素的数据类型 的MPI_Datatype 句柄。newtype [out]
返回时,包含表示包含元素块计数副本的数据类型的MPI_Datatype句柄。 每个块都有 blocklength 元素。 每个块的位移在 array_of_displacements 中指定。
返回值
返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。
在 Fortran 中,返回值存储在 IERROR 参数中。
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(*)
注解
此函数类似于 MPI_Type_create_indexed_block 函数,只是位移数组包含每个块的位移(以字节为单位)。
要求
产品 |
Microsoft MPI v6 |
标头 |
Mpi.h;Mpif.h |
库 |
Msmpi.lib |
DLL |
Msmpi.dll |