Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Nem blokkoló módon pontba rendezi az adatokat egy tagból a csoport összes tagja között. Ez a függvény a MPI_Igatherfüggvény által végrehajtott művelet inverzét hajtja végre.
Szintaxis
int MPIAPI MPI_Iscatter(
_In_opt_ const void *sendbuf,
_In_ int sendcount,
_In_ 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, nem kötelező]
Az egérmutató egy pufferre, amely tartalmazza a gyökérfolyamatba küldendő adatokat.Ez a paraméter minden nem gyökérfolyamat esetében figyelmen kívül lesz hagyva.
Ha a komm paraméter egy intrakommunikátorra hivatkozik, a gyökérfolyamatban MPI_IN_PLACE megadásával megadhat egy helyi beállítást. A rendszer figyelmen kívül hagyja a recvcount és a recvtype paramétereket. A pontozott vektor továbbra is n szegmenst tartalmaz, ahol n a csoport mérete; a gyökérfolyamatnak megfelelő szegmens nem lesz áthelyezve.
sendcount [in]
A küldési puffer elemeinek száma. Ha a sendcount értéke nulla, az üzenet adatrésze üres.Ez a paraméter minden nem gyökérfolyamat esetében figyelmen kívül lesz hagyva.
sendtype [in]
A puffer egyes elemeinek adattípusa.Ez a paraméter minden nem gyökérfolyamat esetében figyelmen kívül lesz hagyva.
recvbuf [ki, nem kötelező]
A leíró egy pufferbe, amely az egyes folyamatokon fogadott adatokat tartalmazza. A puffer elemeinek száma és adattípusa a recvcount és a recvtype paraméterekben van megadva.recvcount [in]
A fogadó puffer elemeinek száma. Ha a szám nulla, az üzenet adatrésze üres.recvtype [in]
A fogadó puffer elemeinek MPI-adattípusa.root [in]
A fogadó folyamat rangja a megadott kommunikátorban.comm [in]
A MPI_Comm communicator leírója.request [out]
A kommunikációs műveletet jelképező 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 lesz tárolva.
Fortran
MPI_ISCATTER(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 együttes csökkentési műveletet kezdeményez, amelyet külön befejezési hívásban kell végrehajtani. A kezdeményezést követően a művelet 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ó csökkentési műveletek a "háttérben" futtatva mérsékelhetik a csökkenté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ó csökkentési műveletekhez.
Követelmények
Termék |
Microsoft MPI v7 |
Fejléc |
Mpi.h; Mpif.h |
Kódtár |
Msmpi.lib |
DLL |
Msmpi.dll |