MPI_Waitsome funkce
Dokončí některé z několika nevyřízených operací.
Syntaxe
int MPIAPI MPI_Waitsome(
int incount,
_Inout_count_(incount) MPI_Request array_of_requests,
_Out_ int *outcount,
_Out_cap_post_count_(incount,*outcount) int *array_of_indices,
_Out_cap_post_count_(incount,*outcount) *array_of_statuses
);
Parametry
incount
Počet položek v parametru array_of_requests .array_of_requests
Pole MPI_Request zpracování nevyřízených operací.outcount [out]
Počet dokončených žádostí.array_of_indices
Pole indexů v array_of_requests operací, které byly dokončeny. Array_of_requests se indexuje z nuly v jazyce C a z jednoho v jazyce Fortran.array_of_statuses
Pole stavových objektů pro dokončené operace nebo MPI_STATUSES_IGNORE.
Vrácená hodnota
Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.
V nástroji Fortran je vrácená hodnota uložena v parametru IERROR .
Fortran
MPI_WAITSOME(INCOUNT, ARRAY_OF_REQUESTS, OUTCOUNT, ARRAY_OF_INDICES, ARRAY_OF_STATUSES, IERROR)
INTEGER INCOUNT, ARRAY_OF_REQUESTS(*), OUTCOUNT, ARRAY_OF_INDICES(*),
ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*), IERROR
Poznámky
Pole indic je v rozsahu 0 až incount – 1 pro C a v rozsahu 1 až incount pro Fortran.
Požadavky NULL jsou ignorovány; Pokud mají všechny požadavky hodnotu NULL, vrátí rutina hodnotu outcount nastavenou na MPI_UNDEFINED.
I když je možné v array_of_requests uvést popisovač požadavků více než jednou, taková akce je považována za chybnou a může způsobit, že program bude neúspěšně ukončen nebo bude mít nesprávné výsledky.
MPI_Waitsome poskytuje rozhraní podobně jako volání "select" nebo "poll" v Unixu a v implementaci s vysokou kvalilitou označuje všechny požadavky, které byly dokončeny při volání MPI_Waitsome . MPI_Waitsome však zaručuje, že byla dokončena alespoň jedna žádost; není zaručeno, že všechny dokončené žádosti budou vráceny nebo že položky v array_of_indices budou ve vzestupném pořadí. Požadavky, které jsou dokončeny během provádění MPI_Waitsome , se také můžou nebo nemusí vrátit v závislosti na načasování dokončení zprávy.
Požadavky
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package nebo HPC Pack 2008 Client Utilities |
Hlavička |
Mpi.h; Mpif.h |
Knihovna |
Msmpi.lib |
DLL |
Msmpi.dll |