Funktionsübersicht
. .
Virtuelle Topologien
Hilfesystem für den Message Passing Interface Standard MPI
MPI_Cart_rank
Wandelt die logischen Koordinaten eines Prozesses in einer kartesischen
Topologie um in Prozeßränge, wie sie von den Sende- und Empfangsroutinen
benötigt werden
Syntax:
MPI_Cart_rank( comm, coords, rank )
Input Parameter:
comm - Kommunikator mit kartesischer Struktur (handle)
coords - logische Koordinaten des Prozesses (array of integer)
Dieses Feld muß soviele Einträge haben, wie die Topologie Dimensionen
besitzt. Ist für eine Dimension i periods[i] = true, werden Einträge in
coords[i], die größer als der verfügbare Namensraum in dieser Dimension sind,
automatisch ins Intervall 0 bis dims[i] zurückübersetzt. Für nichtperiodische
Dimensionen führen out-of-range-Angaben in coords zu einem Fehler.
Output Parameter:
rank - Rang zur Identifikation des Prozesses (integer)
Aufruf:
msg wird an den Prozeß mit den Koordinaten (0,1,0) geschickt.
#include "mpi.h"
int rank;
int coords[3];
MPI_Comm comm;
...
coords[0]=0; coords[1]=1; coords[2]=0;
MPI_Cart_rank( comm, coords, &rank );
MPI_Send( msg, 1, datatype, rank, 0, comm);
...
Beispiel