Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Boduje data od jednoho člena napříč všemi členy skupiny neblokujícím způsobem. Tato funkce provádí inverzní funkci k operaci, kterou provádí funkce MPI_Igather.
Syntaxe
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
);
Parametry
sendbuf [in, optional]
Ukazatel na vyrovnávací paměť obsahující data, která mají být odeslána do kořenového procesu.Tento parametr je ignorován pro všechny procesy, které nejsou kořenem.
Pokud parametr comm odkazuje na intracommunicator, můžete zadat místní možnost zadáním MPI_IN_PLACE v kořenovém procesu. Parametry recvcount a recvtype se ignorují. Bodový vektor je stále považován za obsahující n segmentů, kde n je velikost skupiny; segment, který odpovídá kořenovému procesu, se nepřesune.
sendcount [in]
Počet prvků ve vyrovnávací paměti pro odesílání. Pokud je hodnota sendcount nulová, je datová část zprávy prázdná.Tento parametr je ignorován pro všechny procesy, které nejsou kořenem.
sendtype [in]
Datový typ každého prvku ve vyrovnávací paměti.Tento parametr je ignorován pro všechny procesy, které nejsou kořenem.
recvbuf [out, optional]
Popisovač vyrovnávací paměti, která obsahuje data přijatá v každém procesu. Počet a datový typ prvků ve vyrovnávací paměti jsou uvedeny v parametrech recvcount a recvtype .recvcount [in]
Počet prvků ve vyrovnávací paměti pro příjem. Pokud je počet nula, datová část zprávy je prázdná.recvtype [in]
Datový typ MPI prvků v vyrovnávací paměti pro příjem.root [v]
Pořadí procesu přijímání v rámci zadaného komunikátoru.comm [in]
Popisovač MPI_Comm komunikátoru.žádost [out]
Popisovač MPI_Request představující komunikační operaci.
Vrácená hodnota
Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.
Ve Fortranu je vrácená hodnota uložena v parametru IERROR .
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
Poznámky
Neblokující volání inicializuje operaci kolektivní redukce, která musí být dokončena v samostatném volání dokončení. Po zahájení může operace probíhat nezávisle na výpočtu nebo jiné komunikaci v zúčastněných procesech. Tímto způsobem mohou neblokující operace redukce zmírnit případné synchronizační účinky operací redukce jejich spouštěním na "pozadí".
Všechna volání dokončení (např. MPI_Wait) jsou podporována pro neblokující operace redukce.
Požadavky
Produkt |
Microsoft MPI v7 |
Hlavička |
Mpi.h; Soubor Mpif.h |
Knihovna |
Msmpi.lib |
DLL |
Msmpi.dll |