MPI_Rsend functie
Voert een verzendbewerking in de modus Gereed uit en retourneert wanneer de verzendbuffer veilig opnieuw kan worden gebruikt.
Syntaxis
int MPIAPI MPI_Rsend(
_In_opt_ void *buf,
int count,
MPI_Datatype datatype,
int dest,
int tag,
MPI_Comm comm
);
Parameters
buf [in, optioneel]
Een aanwijzer naar de buffer die de gegevens bevat die moeten worden verzonden.Tellen
Het aantal elementen in de buffer. Als het gegevensgedeelte van het bericht leeg is, stelt u de parameter count in op 0.Datatype
Het gegevenstype van de elementen in de buffer.Dest
De rang van het doelproces binnen de communicator die is opgegeven door de comm parameter.Tag
De berichttag die kan worden gebruikt om verschillende typen berichten te onderscheiden.Comm
Het handvat naar de communicator.
Retourwaarde
Retourneert MPI_SUCCESS bij succes. Anders is de retourwaarde een foutcode.
In Fortran wordt de retourwaarde opgeslagen in de parameter IERROR .
Fortran
MPI_RSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR
Opmerkingen
Deze functie is niet-lokaal. Deze functie retourneert zodra de verzendbuffer opnieuw kan worden gebruikt en is niet afhankelijk van de status van een overeenkomende ontvangstbewerking. De succesvolle voltooiing van de algehele verzendbewerking is echter afhankelijk van het bestaan van een overeenkomende ontvangstbewerking.
Deze functie kan alleen worden aangeroepen als de overeenkomende ontvangstbewerking al is geboekt. Anders retourneert de functie een fout en is het resultaat niet gedefinieerd. Op sommige systemen elimineert deze vereiste een deel van de handshaking die in andere modi wordt gebruikt, en kan dit de prestaties verbeteren in vergelijking met de standaard- of synchrone verzendbewerkingen.
De functie MPI_Rsend heeft dezelfde semantiek als de functies MPI_Send en MPI_Ssend , maar het systeem wordt gewaarschuwd dat er al een overeenkomende ontvangst is gepost. Deze informatie kan wat overhead besparen. Daarom kan in een correct programma een kant-en-klaar verzenden worden vervangen door een standaardverzending zonder dat dit van invloed is op het gedrag van het programma, behalve de prestaties.
Vereisten
Product |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package of HPC Pack 2008 Client Utilities |
Header |
Mpi.h; Mpif.h |
Bibliotheek |
Msmpi.lib |
DLL |
Msmpi.dll |