Funktionsübersicht . . Blockierende Kommunikation

Hilfesystem für den Message Passing Interface Standard MPI


MPI_Recv

Empfangen einer Nachricht (blockierend)

Syntax:

Output Parameter: Input Parameter Anmerkung:

Das Argument 'count' gibt die maximale Länge einer Nachricht an. Wieviele Elemente tatsächlich empfangen wurden, läßt sich mit MPI_Get_count ermitteln.

Aufruf:

#include "mpi.h"

    int           msglen, again=1;
    void          *buf;
    MPI_Datatype  datatype
    MPI_Comm      comm;
    MPI_Status    status;

    ...  
    while (again) {
	MPI_Probe(ROOT, MPI_ANY_TAG, comm, &status);
        MPI_Get_count(&status, datatype, &msglen);
	buf=malloc(msglen*sizeof(int));
	MPI_Recv(buf, msglen, datatype, status.MPI_SOURCE, status.MPI_TAG, 
                 comm, &status);
        ...
    }
    ...
Beispiel