MPI_Ibcast função
Transmite uma mensagem do processo com rank "root" para todos os outros processos do comunicador de forma sem bloqueio.
Sintaxe
int MPIAPI MPI_Ibcast(
_Inout_ void *buffer,
_In_ int count,
_In_ MPI_Datatype datatype,
_In_ int root,
_In_ MPI_Comm comm,
_Out_ MPI_Request *request
);
Parâmetros
buffer [entrada, saída]
O ponteiro para o buffer de dados. No processo especificado pelo parâmetro root, o buffer contém os dados a serem transmitidos. Em todos os outros processos no comunicador especificados pelo parâmetro comm, o buffer recebe os dados transmitidos pelo processo raiz.de buffer consiste em contagem elementos sucessivos doMPI_Datatype indicado pelo identificador de de tipo de dados. O comprimento da mensagem é especificado em termos de número de elementos, não número de bytes. contagem [in]
O número de elementos de dados no buffer. Se a contagem de parâmetro for zero, a parte de dados da mensagem estará vazia.tipo de dados [in]
O identificador MPI_Datatype que representa o tipo de dados de cada elemento em buffer.raiz [em]
A classificação do processo dentro do MPI_Commcomm enviar buffer.comunicação [in]
O identificador MPI_Comm comunicador.pedido [out]
MPI_Request identificador que representa a operação de comunicação.
Valor de retorno
Retorna MPI_SUCCESS no sucesso. Caso contrário, o valor de retorno é um código de erro.
No Fortran, o valor de retorno é armazenado no parâmetro IERROR.
Fortran
MPI_IBCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR)
<type> BUFFER(*)
INTEGER COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR
Comentários
Uma chamada sem bloqueio inicia uma operação de transmissão coletiva que deve ser concluída em uma chamada de conclusão separada. Uma vez iniciada, a operação pode progredir independentemente de qualquer cálculo ou outra comunicação nos processos participantes. Dessa forma, as operações de transmissão sem bloqueio podem mitigar possíveis efeitos de sincronização das operações de transmissão, executando-as em "segundo plano".
Todas as chamadas de conclusão (por exemplo, MPI_Wait) são suportadas para operações de transmissão sem bloqueio.
Requerimentos
Produto |
Microsoft MPI v6 |
Cabeçalho |
Mpi.h; Mpif.h |
Biblioteca |
Msmpi.lib |
DLL |
Msmpi.dll |