funktionen MPI_Comm_dup
Duplicerar en befintlig kommunikatör med associerade nyckelvärden. För varje nyckelvärde avgör respektive funktion för återanrop av kopiering det attributvärde som är associerat med den här nyckeln i den nya kommunikationsfunktionen. Återanropet kan till exempel ta bort attributet från den nya kommunikatören.
Syntax
int MPIAPI MPI_Comm_dup(
MPI_Comm comm,
_Out_ MPI_Comm *newcomm
);
Parametrar
Comm
Den kommunikatör som ska dupliceras.newcomm [out]
Vid retur innehåller ett handtag till en ny kommunikatör. Den nya kommunikatören har samma grupp eller grupper och kopierad cachelagrad information från källan, men den innehåller ny kontextinformation.
Returvärde
Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.
I Fortran lagras returvärdet i parametern IERROR .
Fortran
MPI_COMM_DUP(COMM,NEWCOMM,IERROR)
INTEGER COMM, NEWCOMM, IERROR
Kommentarer
Den här funktionen skapar ett duplicerat kommunikationsutrymme som har samma egenskaper som den ursprungliga kommunikatören. Detta omfattar alla attribut och topologier. Den här funktionen är giltig även om det finns väntande punkt-till-punkt-kommunikation som involverar källkommunikatören.
En användare kan anropa funktionen MPI_Comm_dup i början av den parallella processen och senare frigöra den duplicerade kommunikatören med hjälp av funktionen MPI_Comm_free . Andra modeller för kommunikatorhantering är också möjliga.
Den här funktionen gäller både intracommunicators och intercommunicators.
Krav
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package eller HPC Pack 2008 Client Utilities |
Huvud |
Mpi.h; Mpif.h |
Bibliotek |
Msmpi.lib |
DLL |
Msmpi.dll |