Compartilhar via


Função MPI_Type_create_hindexed_block

Permite a replicação de um tipo de dados antigo em uma sequência de blocos (cada bloco é uma concatenação do tipo de dados antigo), em que todos os blocos têm o mesmo comprimento de bloco, mas podem ter deslocamentos de bloco diferentes em bytes.

Sintaxe

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

Parâmetros

  • count [in]
    O número de blocos e o número de entradas no parâmetro array_of_displacements .

  • blocklength [in]
    O número de elementos em cada bloco.

  • array_of_displacements [in]
    A matriz que contém o deslocamento de cada bloco, em bytes.

  • oldtype [in]
    O identificador MPI_Datatype que representa o tipo de dados de cada elemento.

  • newtype [out]
    No retorno, contém o identificador MPI_Datatype que representa um tipo de dados que contém cópias de contagem de blocos de elementos. Cada bloco tem elementos de blocklength . O deslocamento de cada bloco é especificado em array_of_displacements.

Retornar valor

Retorna MPI_SUCCESS com êxito. Caso contrário, o valor retornado será um código de erro.

No Fortran, o valor retornado é armazenado no parâmetro 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(*)

Comentários

Essa função é semelhante à função MPI_Type_create_indexed_block exceto que a matriz de deslocamentos contém o deslocamento de cada bloco em bytes.

Requisitos

Produto

Microsoft MPI v6

parâmetro

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Confira também

Funções de tipo de dados MPI

MPI_Type_create_indexed_block