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 |