Dela via


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

Se även

MPI Communicator Functions