Megosztás:


MPI_Allreduce függvény

Az összes folyamat értékeit egyesíti, és az eredményt az összes folyamatnak osztja el.

Szintaxis

int MPIAPI MPI_Allreduce(
  _In_opt_  const void         *sendbuf,
  _Out_opt_       void         *recvbuf,
  _In_            int          count,
  _In_            MPI_Datatype datatype,
  _In_            MPI_Op       op,
  _In_            MPI_Comm     comm
);

Paraméterek

  • sendbuf [in, nem kötelező]
    A csoport összes folyamatának elküldendő adatokra mutató mutató. A puffer elemeinek számát és adattípusát a darabszám és az adattípus paraméterei határozzák meg.

    Ha a comm paraméter egy intrakommunikátorra hivatkozik, megadhat egy helyben beállítást úgy, hogy minden folyamat MPI_IN_PLACE meg van adva. Ebben az esetben a bemeneti adatok minden folyamatnál a fogadó pufferből származnak, ahol azokat a kimeneti adatok váltják fel.

  • recvbuf [ki, nem kötelező]
    Az egérmutató egy pufferre a csökkentési művelet eredményének fogadásához. Ez a paraméter csak a gyökérfolyamatban jelentős.

  • count [in]
    A folyamatból küldendő elemek száma.

  • datatype [in]
    A puffer egyes elemeinek MPI_Datatype . Ennek a paraméternek kompatibilisnek kell lennie az op paraméterben megadott művelettel.

  • op [in]
    A MPI_Op leíró, amely a végrehajtandó globális csökkentési műveletet jelzi. A leíró egy beépített vagy alkalmazás által meghatározott műveletet jelezhet. Az előre definiált műveletek listáját lásd: MPI_Op.

  • comm [in]
    A MPI_Comm kommunikátor fogantyú.

Visszatérési érték

Sikeres MPI_SUCCESS ad vissza. Ellenkező esetben a visszatérési érték hibakód.

A Fortranban a visszatérési érték az IERROR paraméterben van tárolva.

Fortran

    MPI_ALLREDUCE(SENDBUF, RECVBUF, COUNT, DATATYPE, OP, COMM, IERROR)
        <type> SENDBUF(*), RECVBUF(*)
        INTEGER COUNT, DATATYPE, OP, COMM, IERROR

Megjegyzések

Ha a comm egy interkommunikátor, az A csoportban lévő folyamatok által biztosított adatok csökkenésének eredményét a rendszer a B csoportban lévő minden folyamatnál tárolja, és fordítva. Mindkét csoportnak meg kell adnia az azonos típusú aláírást meghatározó szám - és adattípus-argumentumokat .

Minden befejezési hívás (például MPI_Wait) támogatott a nem blokkoló csökkentési műveletekhez.

Követelmények

Termék

HPC Pack 2012 MS-MPI terjeszthető csomag, HPC Pack 2008 R2 MS-MPI terjeszthető csomag, HPC Pack 2008 MS-MPI újraterjeszthető csomag vagy HPC Pack 2008 ügyfél-segédprogramok

Fejléc

Mpi.h; Mpif.h

Kódtár

Msmpi.lib

DLL

Msmpi.dll

Lásd még

MPI kollektív függvények

MPI_Reduce

MPI_Datatype

MPI_Op