Funktionsübersicht . . Blockierende Kommunikation

Hilfesystem für den Message Passing Interface Standard MPI


MPI_Sendrecv_replace

Senden und Empfangen einer Nachricht im gleichen Puffer (blockierend)

Syntax:

Input Parameter: Output Parameter: Inout Parameter: Anmerkung:

Die gesendete Nachricht wird durch die empfangene ersetzt.

Aufruf:

Weiterschieben von Daten des gleichen Typs in einem Ring


#include "mpi.h"

    int           myid, numprocs, pred, succ;
    int           count;
    void          *buf;
    MPI_Datatype  datatype;
    MPI_Comm      comm;
    MPI_Status    status;

    ...
    MPI_Comm_size(comm, &numprocs);
    MPI_Comm_rank(comm, &myid);
    succ=(myid+1)%(numprocs);
    pred=(myid+numprocs-1)%(numprocs);
    ...
    MPI_Sendrecv_replace(buf, count, datatype, succ, 99, pred, 
                         MPI_ANY_TAG, comm, &status);
    ...