MPI_Type_indexed 函数

定义由指定数量的任意大小的块组成的新数据类型。 每个块都是现有数据类型的元素的串联。 每个块可以包含不同数量的元素,并且具有不同的位移。

语法

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
);

参数

  • 计数
    array_of_blocklengthsarray_of_displacements参数中的块数和元素数。

  • array_of_blocklengths
    每个块的元素数。

  • array_of_displacements
    每个单独块的位移(以字节为单位)。 所有块置换必须是 oldtype 参数中指定的数据类型范围的倍数。

  • oldtype
    每个元素的 MPI 数据类型。

  • newtype [out]
    返回时,包含表示新数据类型 的MPI_Datatype 句柄。

返回值

返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。

在 Fortran 中,返回值存储在 IERROR 参数中。

Fortran

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

要求

产品

HPC Pack 2012 MS-MPI 可再发行程序包、HPC Pack 2008 R2 MS-MPI 可再发行程序包、HPC Pack 2008 MS-MPI 可再发行程序包或 HPC Pack 2008 客户端实用工具

标头

Mpi.h;Mpif.h

Msmpi.lib

DLL

Msmpi.dll

另请参阅

MPI 数据类型函数

MPI_Type_create_hindexed