MPI_Ireduce, funkcja
Wykonuje globalną operację redukcji (na przykład sumę, maksymalną lub logiczną) we wszystkich członkach grupy w sposób nieblokcyjny.
Składnia
int MPIAPI MPI_Ireduce(
_In_ void *sendbuf,
_Out_opt_ void *recvbuf,
_In_ int count,
_In_ MPI_Datatype datatype,
_In_ MPI_Op op,
_In_ int root,
_In_ MPI_Comm comm,
_Out_ MPI_Request *request
);
Parametry
sendbuf [in]
Wskaźnik do buforu zawierającego dane z tej rangi do użycia w redukcji. Bufor składa się z liczby kolejnych elementów MPI_Datatype wskazywanych przez dojście typu danych. Długość komunikatu jest określana pod względem liczby elementów, a nie liczby bajtów.recvbuf [out, optional]
Wskaźnik do buforu w celu otrzymania wyniku operacji redukcji. Ten parametr jest znaczący tylko w procesie głównym.liczba [in]
Liczba elementów do wysłania z tego procesu.typ danych [in]
Dojście MPI_Datatype reprezentujące typ danych każdego elementu w sendbuf.op [in]
Uchwyt MPI_Op wskazujący operację redukcji globalnej do wykonania. Uchwyt może wskazywać wbudowaną lub zdefiniowaną przez aplikację operację. Aby uzyskać listę wstępnie zdefiniowanych operacji, zobacz temat MPI_Op.katalogu głównego [in]
Ranga procesu odbierania w MPI_Commcomm.comm [in]
Uchwyt komunikatora MPI_Comm.żądanie [out]
Dojście MPI_Request reprezentujące operację komunikacji.
Wartość zwracana
Zwraca MPI_SUCCESS powodzenia. W przeciwnym razie wartość zwracana jest kodem błędu.
W fortran wartość zwracana jest przechowywana w parametrze IERROR.
Fortran
MPI_IREDUCE(SENDBUF, RECVBUF, COUNT, DATATYPE, OP, ROOT, COMM, REQUEST, IERROR)
<type> SENDBUF(*), RECVBUF(*)
INTEGER COUNT, DATATYPE, OP, ROOT, COMM, REQUEST, IERROR
Uwagi
Wywołanie nieblokacyjne inicjuje zbiorczą operację redukcji, która musi zostać ukończona w osobnym wywołaniu ukończenia. Po zainicjowaniu operacja może przebiegać niezależnie od obliczeń lub innej komunikacji w uczestniczących procesach. W ten sposób nieblokacyjne operacje redukcji mogą ograniczyć możliwe synchronizowanie skutków operacji redukcji, uruchamiając je w "tle".
Wszystkie wywołania ukończenia (np. MPI_Wait) są obsługiwane w przypadku operacji redukcji nieblokujących.
Wymagania
Produkt |
Microsoft MPI v6 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |
Zobacz też