Поделиться через


функция MPI_Type_create_hindexed

Определяет новый тип данных, состоящий из указанного числа блоков произвольного размера. Каждый блок представляет собой объединение элементов существующего типа данных. Каждый блок может содержать разное количество элементов и иметь разное смещение.

Синтаксис

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

Параметры

  • count
    Количество блоков и количество записей в параметрах array_of_blocklengths и array_of_displacements .

  • array_of_blocklengths
    Количество элементов каждого блока.

  • array_of_displacements
    Смещение каждого блока в байтах.

  • старый тип
    Тип данных MPI для каждого элемента.

  • newtype [out]
    При возврате содержит дескриптор MPI_Datatype , представляющий новый тип данных.

Возвращаемое значение

Возвращает MPI_SUCCESS при успешном выполнении. В противном случае возвращаемое значение представляет собой код ошибки.

В Fortran возвращаемое значение хранится в параметре IERROR .

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

Комментарии

Эта функция заменяет MPI_Type_hindexed, который является нерекомендуемой.

Требования

Продукт

Распространяемый пакет HPC 2012 MS-MPI, пакет HPC 2008 R2 распространяемый пакет MS-MPI, пакет HPC 2008 MS-MPI или клиентские служебные программы пакета HPC 2008

Заголовок

Mpi.h; Mpif.h

Библиотека

Msmpi.lib

DLL

Msmpi.dll

См. также раздел

Функции типов данных MPI

MPI_Type_indexed