Megosztás:


MPI_Igather függvény

Nem blokkoló módon gyűjt adatokat egy csoport összes tagjától egy taghoz.

Szintaxis

int WINAPI MPI_Igather(
  _In_      void         *sendbuf,
            int          sendcount,
            MPI_Datatype sendtype,
  _Out_opt_ void         *recvbuf,
  _In_      int          recvcount,
  _In_      MPI_Datatype recvtype,
  _In_      int          root,
  _In_      MPI_Comm     comm,
  _Out_     MPI_Request  *request
);

Paraméterek

  • sendbuf [in]
    A gyökérnek küldendő adatokat tartalmazó pufferre mutató mutató. A puffer a sendtype leíró által jelzett MPI_Datatypesendcount egymást követő elemeiből áll. Az üzenet hosszát az elemek száma, nem a bájtok száma határozza meg.

  • sendcount
    A sendbuf sendtype elemeinek száma. Ha az érték nulla, az üzenet adatrésze üres.

  • sendtype
    A sendbuf egyes elemeinek adattípusát jelölő MPI_Datatype leíró.

  • recvbuf [ki, nem kötelező]
    A gyökérfolyamatok által fogadott adatokat tartalmazó pufferre mutató mutató, beleértve a gyökérfolyamat által küldött adatokat is (csak a gyökérnél jelentős). A rendszer figyelmen kívül hagyja a fogadópuffer recvbufját az összes nem gyökérfolyamat esetében. A gyökérfolyamatban a recvbuf a recvtype leíró által jelzett MPI_Datatype egymást követő elemeiből áll. Az üzenet hosszát az elemek száma, nem a bájtok száma határozza meg.

  • recvcount [in]
    A recvbuf recvtype elemeinek száma. Ha az érték nulla, az üzenet adatrésze üres (csak a gyökérnél jelentős).

  • recvtype [in]
    A recvbuf egyes elemeinek adattípusát jelölő MPI_Datatype leíró (csak a gyökérnél jelentős).

  • root [in]
    A fogadó folyamat rangja a MPI_Commcomm-on belül.

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

  • request [out]
    A kommunikációs műveletet jelölő MPI_Request leíró.

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_IGATHER(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE,
    ROOT, COMM, REQUEST, IERROR)
        <type> SENDBUF(*), RECVBUF(*)
        INTEGER SENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, ROOT, COMM, REQUEST, IERROR

Megjegyzések

A nem blokkoló hívás közös gyűjtési műveletet kezdeményez, amelyet egy külön befejezési hívásban kell végrehajtani. A művelet a kezdeményezést követően a részt vevő folyamatokban végzett számításoktól vagy más kommunikációtól függetlenül is továbbhaladhat. Ily módon a nem blokkoló gyűjtési műveletek a "háttérben" futtatva mérsékelhetik a gyűjtési műveletek lehetséges szinkronizálási hatásait.

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

Követelmények

Termék

Microsoft MPI v6

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_Datatype

MPI_Gather

MPI_Test

MPI_Testall

MPI_Testany

MPI_Testsome

MPI_Wait

MPI_Waitall

MPI_Waitany

MPI_Waitsome