MPI_Type_indexed-Funktion
Definiert einen neuen Datentyp, der aus einer angegebenen Anzahl von Blöcken beliebiger Größe besteht. Jeder Block ist eine Verkettung von Elementen eines vorhandenen Datentyps. Jeder Block kann eine andere Anzahl von Elementen enthalten und eine andere Verschiebung aufweisen.
Syntax
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
);
Parameter
count
Die Anzahl der Blöcke und die Anzahl der Elemente in den Parametern array_of_blocklengths und array_of_displacements .array_of_blocklengths
Die Anzahl der Elemente jedes einzelnen Blocks.array_of_displacements
Die Verschiebung jedes einzelnen Blocks in Bytes. Alle Blockverschiebungen müssen ein Vielfaches der Ausdehnung des Datentyps sein, wie im oldtype-Parameter angegeben.oldtype
Der MPI-Datentyp jedes Elements.newtype [out]
Enthält bei Rückgabe ein MPI_Datatype-Handle , das den neuen Datentyp darstellt.
Rückgabewert
Gibt MPI_SUCCESS nach Erfolg zurück. Andernfalls ist der Rückgabewert ein Fehlercode.
In Fortran wird der Rückgabewert im IERROR-Parameter gespeichert.
Fortran
MPI_TYPE_INDEXED(COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
COUNT, ARRAY_OF_BLOCKLENGTHS, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR
Anforderungen
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package oder HPC Pack 2008 Client Utilities |
Header |
Mpi.h; Mpif.h |
Bibliothek |
Msmpi.lib |
DLL |
Msmpi.dll |