Freigeben über


MPI_Sendrecv-Funktion

Sendet und empfängt eine Nachricht.

Syntax

int MPIAPI MPI_Sendrecv(
  _In_  void         *sendbuf,
        int          sendcount,
        MPI_Datatype sendtype,
        int          dest,
        int          sendtag,
  _Out_ void         *recvbuf,
        int          recvcount,
        MPI_Datatype recvtype,
        int          source,
        int          recvtag,
        MPI_Comm     comm,
  _Out_ MPI_Status   *status
);

Parameter

  • sendbuf [in]
    Anfangsadresse des Sendepuffers.

  • sendcount
    Anzahl der Elemente im Sendepuffer.

  • sendtype
    Typ der Elemente im Sendepuffer.

  • Dest
    Rang des Ziels.

  • sendtag
    Tag senden.

  • recvbuf [out]
    Erste Adresse des Empfangspuffers.

  • recvcount
    Anzahl der Elemente im Empfangspuffer.

  • recvtype
    Typ der Elemente im Empfangspuffer.

  • source
    Rang der Quelle.

  • recvtag
    Empfangstag.

  • comm
    Communicator.

  • status [out]
    Statusobjekt, das auf den Empfangsvorgang verweist.

Rückgabewert

Gibt MPI_SUCCESS nach Erfolg zurück. Andernfalls ist der Rückgabewert ein Fehlercode.

In Fortran wird der Rückgabewert im IERROR-Parameter gespeichert.

Fortran

    MPI_SENDRECV(SENDBUF, SENDCOUNT, SENDTYPE, DEST, SENDTAG, RECVBUF,
            RECVCOUNT, RECVTYPE, SOURCE, RECVTAG, COMM, STATUS, IERROR)
        <type> SENDBUF(*), RECVBUF(*)
        INTEGER SENDCOUNT, SENDTYPE, DEST, SENDTAG, RECVCOUNT, RECVTYPE,
        SOURCE, RECVTAG, COMM, STATUS(MPI_STATUS_SIZE), IERROR

Anforderungen

Produkt

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package oder HPC Pack 2008 Client Utilities

Header

Mpi.h; Mpif.h

Bibliothek

Msmpi.lib

DLL

Msmpi.dll

Weitere Informationen

MPI-Punkt-zu-Punkt-Funktionen