Partilhar via


função MPI_Comm_dup

Duplica um comunicador existente com valores de chave associados. Para cada valor de chave, a respetiva função de chamada de retorno de cópia determina o valor do atributo associado a esta chave no novo comunicador. A chamada de retorno de cópia pode, por exemplo, eliminar o atributo do novo comunicador.

Sintaxe

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

Parâmetros

  • vírgula
    O comunicador a duplicar.

  • newcomm [out]
    Na devolução, contém uma alça para um novo comunicador. O novo comunicador tem o mesmo grupo ou grupos e quaisquer informações copiadas em cache da origem, mas contém novas informações de contexto.

Valor devolvido

Devolve MPI_SUCCESS com êxito. Caso contrário, o valor devolvido é um código de erro.

Em Fortran, o valor devolvido é armazenado no parâmetro IERROR .

Fortran

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

Observações

Esta função cria um espaço de comunicação duplicado que tem as mesmas propriedades que o comunicador original. Isto inclui quaisquer atributos e topologias. Esta função é válida mesmo que existam comunicações ponto a ponto pendentes que envolvam o comunicador de origem.

Um utilizador pode chamar a função MPI_Comm_dup no início do processo paralelo e, mais tarde, libertar o comunicador duplicado com a função MPI_Comm_free . Também são possíveis outros modelos de gestão de comunicadores.

Esta função aplica-se tanto aos intracomuntores como aos intercomunicadores.

Requisitos

Produto

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

Cabeçalho

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Ver também

Funções do Comunicador MPI