Freigeben über


MPI_Type_create_indexed_block Funktion

Definiert einen neuen Datentyp, der aus einer angegebenen Anzahl von Blöcken besteht. Jeder Block hat die gleiche Blocklänge, aber jeder Block kann eine andere Blockverschiebung aufweisen.

Syntax

int MPIAPI MPI_Type_create_indexed_block(
        int                   count,
        int                   blocklength,
        _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 Einträge im parameter array_of_displacements .

  • Blocklänge
    Die Anzahl der Elemente in jedem Block.

  • 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_CREATE_INDEXED_BLOCK(COUNT, BLOCKLENGTH, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR)
        COUNT, BLOCKLENGTH, ARRAY_OF_DISPLACEMENTS, OLDTYPE, NEWTYPE, IERROR

Hinweise

Diese Funktion ähnelt der Funktion MPI_Type_indexed mit der Ausnahme, dass alle Blöcke die gleiche Länge haben.

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

Weitere Informationen

MPI-Datentypfunktionen

MPI_Type_indexed