função MPI_Rsend
Executa uma operação de envio de modo pronto e retorna quando o buffer de envio pode ser reutilizado 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 o buffer que contém os dados a serem enviados.contagem
O número de elementos no buffer. Se a parte de dados da mensagem estiver vazia, defina o parâmetro count como 0.datatype
O tipo de dados dos elementos no buffer.dest
A classificação do processo de destino dentro do comunicador especificado pelo parâmetro comm .tag
A marca de mensagem que pode ser usada para distinguir diferentes tipos de mensagens.comm
O identificador para o comunicador.
Retornar valor
Retorna MPI_SUCCESS em caso de êxito. Caso contrário, o valor retornado será um código de erro.
Em Fortran, o valor retornado é armazenado no parâmetro IERROR .
Fortran
MPI_RSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR
Comentários
Essa função não é local. Essa função retorna assim que o buffer de envio pode ser reutilizado e não depende do status de uma operação de recebimento correspondente. No entanto, a conclusão bem-sucedida da operação de envio geral depende da existência de uma operação de recebimento correspondente.
Essa função só poderá ser chamada se a operação de recebimento correspondente já estiver postada. Caso contrário, a função retornará um erro e seu resultado será indefinido. Em alguns sistemas, esse requisito elimina algumas das práticas usadas em outros modos e pode melhorar o desempenho em comparação com as operações de envio padrão ou síncronas.
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 um recebimento correspondente já foi postado. Essas informações podem economizar alguma sobrecarga. Portanto, em um programa correto, um envio pronto pode ser substituído por um envio padrão sem nenhum efeito sobre o comportamento do programa que não seja o desempenho.
Requisitos
Produto |
Pacote Redistribuível do HPC Pack 2012 MS-MPI, Pacote Redistribuível HPC Pack 2008 R2 MS-MPI, Pacote Redistribuível do HPC Pack 2008 MS-MPI ou Utilitários de Cliente HPC Pack 2008 |
parâmetro |
Mpi.h; Mpif.h |
Biblioteca |
Msmpi.lib |
DLL |
Msmpi.dll |