função MPI_Rsend
Executa uma operação de envio do modo pronto e devolve quando a memória intermédia de envio pode ser reutilizada com segurança.
Sintaxe
int MPIAPI MPI_Rsend(
_In_opt_ void *buf,
int count,
MPI_Datatype datatype,
int dest,
int tag,
MPI_Comm comm
);
Parâmetros
buf [in, opcional]
Um ponteiro para a memória intermédia que contém os dados a enviar.contagem
O número de elementos na memória intermédia. Se a parte de dados da mensagem estiver vazia, defina o parâmetro de contagem como 0.tipo de dados
O tipo de dados dos elementos na memória intermédia.dest
A classificação do processo de destino no comunicador especificado pelo parâmetro de comunicação .etiqueta
A etiqueta de mensagem que pode ser utilizada para distinguir diferentes tipos de mensagens.vírgula
A alça do comunicador.
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_RSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR
Observações
Esta função não é local. Esta função devolve assim que a memória intermédia de envio pode ser reutilizada e não depende do estado de uma operação de receção correspondente. No entanto, a conclusão bem-sucedida da operação de envio global depende da existência de uma operação de receção correspondente.
Esta função só pode ser chamada se a operação de receção correspondente já estiver publicada. Caso contrário, a função devolve um erro e o resultado é indefinido. Em alguns sistemas, este requisito elimina alguns dos testes práticos utilizados noutros modos e pode melhorar o desempenho em comparação com as operações de envio padrão ou síncrona.
A função MPI_Rsend tem a mesma semântica que as funções MPI_Send e MPI_Ssend , mas notifica o sistema de que já foi publicada uma receção correspondente. Essas informações podem guardar algumas sobrecargas. Por conseguinte, num programa correto, um envio pronto pode ser substituído por um envio padrão sem qualquer efeito no comportamento do programa que não seja o desempenho.
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 |