MPI_Ibcast, funkcja
Emituje komunikat z procesu z pozycją "root" do wszystkich innych procesów komunikatora w sposób nieblokcyjny.
Składnia
int MPIAPI MPI_Ibcast(
_Inout_ void *buffer,
_In_ int count,
_In_ MPI_Datatype datatype,
_In_ int root,
_In_ MPI_Comm comm,
_Out_ MPI_Request *request
);
Parametry
bufor [in, out]
Wskaźnik do buforu danych. W procesie określonym przez parametr głównego bufor zawiera dane do emisji. We wszystkich innych procesach komunikatora określonego przez parametr comm bufor odbiera dane emitowane przez proces główny.bufor składa się z liczbykolejnych elementów MPI_Datatype wskazywanych przez dojścietypu danych. Długość komunikatu jest określana pod względem liczby elementów, a nie liczby bajtów. liczba [in]
Liczba elementów danych w buforze. Jeśli parametr count wynosi zero, część danych komunikatu jest pusta.typ danych [in]
Dojście MPI_Datatype reprezentujące typ danych każdego elementu w buforze .katalogu głównego [in]
Ranga procesu w MPI_Commcomm wysyłania buforu.comm [in]
Uchwyt komunikatora MPI_Comm.żądanie [out]
MPI_Request dojście 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_IBCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR)
<type> BUFFER(*)
INTEGER COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR
Uwagi
Wywołanie nieblokacyjne inicjuje zbiorczą operację emisji, 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 emisji mogą ograniczyć możliwe synchronizowanie efektów operacji emisji, uruchamiając je w "tle".
Wszystkie wywołania ukończenia (np. MPI_Wait) są obsługiwane w przypadku nieblokujących operacji emisji.
Wymagania
Produkt |
Microsoft MPI v6 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |
Zobacz też