Partilhar via


função MPI_Type_create_hindexed_block

Permite a replicação de um tipo de dados antigo numa sequência de blocos (cada bloco é uma concatenação do tipo de dados antigo), onde todos os blocos têm o mesmo comprimento de bloco, mas podem ter diferentes deslocamentos de blocos 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

  • contar [em]
    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 [em]
    A matriz que contém a deslocação de cada bloco, em bytes.

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

  • newtype [out]
    Na devolução, contém a MPI_Datatype identificador que representa um tipo de dados que contém cópias de contagem de blocos de elementos. Cada bloco tem elementos de comprimento de bloco . A deslocação de cada bloco é especificada no array_of_displacements.

Valor devolvido

Devolve MPI_SUCCESS com êxito. Caso contrário, o valor devolvido é um código de erro.

Em Fortran, o valor devolvido é 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(*)

Observações

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

Requisitos

Produto

Microsoft MPI v6

Cabeçalho

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Ver também

Funções de Tipo de Dados MPI

MPI_Type_create_indexed_block