Sdílet prostřednictvím


MPI_Comm_dup funkce

Duplikuje existující komunikátor s přidruženými hodnotami klíčů. Pro každou hodnotu klíče určuje příslušná funkce zpětného volání kopírování hodnotu atributu, která je přidružena k tomuto klíči v novém komunikátoru. Zpětné volání kopírování může například odstranit atribut z nového communicatoru.

Syntaxe

int MPIAPI MPI_Comm_dup(
        MPI_Comm comm,
  _Out_ MPI_Comm *newcomm
);

Parametry

  • Komunikace
    Komunikátor, který se má duplikovat.

  • newcomm [out]
    Při vrácení obsahuje popisovač nového komunikátoru. Nový komunikátor má stejnou skupinu nebo skupiny a všechny zkopírované informace uložené v mezipaměti ze zdroje, ale obsahuje nové kontextové informace.

Vrácená hodnota

Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.

V nástroji Fortran je vrácená hodnota uložena v parametru IERROR .

Fortran

    MPI_COMM_DUP(COMM,NEWCOMM,IERROR)
        INTEGER COMM, NEWCOMM, IERROR

Poznámky

Tato funkce vytvoří duplicitní komunikační prostor, který má stejné vlastnosti jako původní komunikátor. To zahrnuje všechny atributy a topologie. Tato funkce je platná i v případě, že existuje čekající komunikace typu point-to-point, která zahrnuje zdrojový komunikátor.

Uživatel může volat funkci MPI_Comm_dup na začátku paralelního procesu a později pomocí funkce MPI_Comm_free uvolnit duplicitní komunikátor. Další modely správy komunikátorů jsou také možné.

Tato funkce se vztahuje jak na intrakomunikátory, tak na mezikomunikátory.

Požadavky

Produkt

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package nebo HPC Pack 2008 Client Utilities

Hlavička

Mpi.h; Mpif.h

Knihovna

Msmpi.lib

DLL

Msmpi.dll

Viz také

Funkce mpi communicatoru