MPI_Rsend, funkcja
Wykonuje operację wysyłania w trybie gotowości i zwraca wartość, gdy bufor wysyłania może być bezpiecznie ponownie używany.
Składnia
int MPIAPI MPI_Rsend(
_In_opt_ void *buf,
int count,
MPI_Datatype datatype,
int dest,
int tag,
MPI_Comm comm
);
Parametry
buf [in, opcjonalnie]
Wskaźnik do buforu zawierającego dane do wysłania.Liczba
Liczba elementów w buforze. Jeśli część danych komunikatu jest pusta, ustaw parametr count na 0.Datatype
Typ danych elementów w buforze.Dest
Ranga procesu docelowego w programie communicator, który jest określony przez parametr comm .Tag
Tag komunikatu, który może służyć do rozróżniania różnych typów komunikatów.Comm
Uchwyt do komunikatora.
Wartość zwracana
Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.
W fortran wartość zwracana jest przechowywana w parametrze IERROR .
Fortran
MPI_RSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR
Uwagi
Ta funkcja nie jest lokalna. Ta funkcja jest zwracana natychmiast po ponownym użyciu buforu wysyłania i nie zależy od stanu zgodnej operacji odbierania. Jednak pomyślne ukończenie ogólnej operacji wysyłania zależy od istnienia zgodnej operacji odbierania.
Tę funkcję można wywołać tylko wtedy, gdy zgodna operacja odbierania została już wysłana. W przeciwnym razie funkcja zwraca błąd i jego wynik jest niezdefiniowany. W niektórych systemach to wymaganie eliminuje niektóre uzgadnianie używane w innych trybach i może poprawić wydajność w porównaniu ze standardowymi lub synchronicznymi operacjami wysyłania.
Funkcja MPI_Rsend ma te same semantyki co funkcje MPI_Send i MPI_Ssend , ale powiadamia system, że pasujący odbieranie jest już opublikowane. Te informacje mogą zaoszczędzić pewne nakłady pracy. W związku z tym w poprawnym programie gotowy wysyłanie może zostać zastąpione przez standardowe wysyłanie bez wpływu na zachowanie programu innego niż wydajność.
Wymagania
Produkt |
Pakiet redystrybucyjny HPC Pack 2012 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 R2 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 MS-MPI lub narzędzia klienckie HPC Pack 2008 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |