Partilhar via


função MPI_Type_indexed

Define um novo tipo de dados que consiste num número especificado de blocos de tamanho arbitrário. Cada bloco é uma concatenação de elementos de um tipo de dados existente. Cada bloco pode conter um número diferente de elementos e ter uma deslocação diferente.

Sintaxe

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

Parâmetros

  • contagem
    O número de blocos e o número de elementos nos parâmetros array_of_blocklengths e array_of_displacements .

  • array_of_blocklengths
    O número de elementos de cada bloco individual.

  • array_of_displacements
    A deslocação de cada bloco individual em bytes. Todos os deslocamentos de blocos têm de ser múltiplos da extensão do tipo de dados, conforme especificado no parâmetro oldtype .

  • oldtype
    O tipo de dados MPI de cada elemento.

  • newtype [out]
    Em troca, contém uma MPI_Datatype identificador que representa o novo tipo de dados.

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_INDEXED(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
        COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR

Requisitos

Produto

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package ou HPC Pack 2008 Client Utilities

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_hindexed