Compartir a través de


MPI_Type_create_hindexed_block función

Permite la replicación de un tipo de datos antiguo en una secuencia de bloques (cada bloque es una concatenación del tipo de datos antiguo), donde todos los bloques tienen la misma longitud de bloque, pero pueden tener desplazamientos de bloques diferentes en bytes.

Sintaxis

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]
    Número de bloques y número de entradas en el parámetro array_of_displacements .

  • blocklength [in]
    Número de elementos de cada bloque.

  • array_of_displacements [in]
    Matriz que contiene el desplazamiento de cada bloque, en bytes.

  • oldtype [in]
    El MPI_Datatype identificador que representa el tipo de datos de cada elemento.

  • newtype [out]
    En la devolución, contiene el identificador de MPI_Datatype que representa un tipo de datos que contiene copias de recuento de bloques de elementos. Cada bloque tiene elementos blocklength . El desplazamiento de cada bloque se especifica en array_of_displacements.

Valor devuelto

Devuelve MPI_SUCCESS si se realiza correctamente. De lo contrario, el valor devuelto es un código de error.

En Fortran, el valor devuelto se almacena en el 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(*)

Comentarios

Esta función es similar a la función MPI_Type_create_indexed_block , salvo que la matriz de desplazamientos contiene el desplazamiento de cada bloque en bytes.

Requisitos

Producto

Microsoft MPI v6

Encabezado

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

Archivo DLL

Msmpi.dll

Consulte también

Funciones de tipo de datos MPI

MPI_Type_create_indexed_block