Freigeben über


MPI_Accumulate-Funktion

Sammeln von Daten im Zielprozess mithilfe des Remotespeicherzugriffs

Syntax

int MPIAPI MPI_Accumulate(
  _In_ void         *origin_addr,
       int          origin_count,
       MPI_Datatype origin_datatype,
       int          target_rank,
       MPI_Aint     target_disp,
       int          target_count,
       MPI_Datatype datatype,
       MPI_Op       op,
       MPI_Win      win
);

Parameter

  • origin_addr [in]
    Anfängliche Adresse des Puffers

  • origin_count
    Anzahl der Einträge im Puffer

  • origin_datatype
    Datentyp jedes Puffereintrags

  • target_rank
    Rang des Ziels

  • target_disp
    Verschiebung vom Anfang des Fensters zum Anfang des Zielpuffers

  • target_count
    Anzahl der Einträge im Zielpuffer

  • datatype
    Datentyp jedes Eintrags im Zielpuffer

  • Op
    vordefinierter Reduzierungsvorgang

  • win
    window-Objekt

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_ACCUMULATE(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
                TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, OP, WIN, IERROR)
        <type> ORIGIN_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE,TARGET_RANK, TARGET_COUNT,
        TARGET_DATATYPE, OP, WIN, 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

Weitere Informationen

MPI One-Sided Kommunikationsfunktionen