MPI_Comm_dup-Funktion
Dupliziert einen vorhandenen Kommunikator mit zugeordneten Schlüsselwerten. Für jeden Schlüsselwert bestimmt die jeweilige Kopierrückruffunktion den Attributwert, der diesem Schlüssel im neuen Communicator zugeordnet ist. Der Kopierrückruf kann z. B. das Attribut aus dem neuen Communicator löschen.
Syntax
int MPIAPI MPI_Comm_dup(
MPI_Comm comm,
_Out_ MPI_Comm *newcomm
);
Parameter
comm
Der zu duplizierende Kommunikator.newcomm [out]
Enthält bei der Rückgabe ein Handle für einen neuen Kommunikator. Der neue Kommunikator verfügt über dieselbe Gruppe bzw. gruppen und alle kopierten zwischengespeicherten Informationen aus der Quelle, enthält jedoch neue Kontextinformationen.
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_COMM_DUP(COMM,NEWCOMM,IERROR)
INTEGER COMM, NEWCOMM, IERROR
Hinweise
Diese Funktion erstellt einen doppelten Kommunikationsraum mit den gleichen Eigenschaften wie der ursprüngliche Kommunikator. Dies schließt alle Attribute und Topologien ein. Diese Funktion ist auch dann gültig, wenn punkt-zu-Punkt-Kommunikationen ausstehen, die den Quellkommunikator einbeziehen.
Ein Benutzer kann die MPI_Comm_dup-Funktion zu Beginn des parallelen Prozesses aufrufen und den duplizierten Kommunikator später mithilfe der MPI_Comm_free-Funktion freigeben. Auch andere Modelle der Kommunikatorverwaltung sind möglich.
Diese Funktion gilt sowohl für Intrakommunikations- als auch für Interkommunikationsvermittler.
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 |