Compartilhar via


função MPI_Ssend

Executa uma operação de envio de modo síncrono e retorna quando o buffer de envio pode ser reutilizado com segurança.

Sintaxe

int MPIAPI MPI_Ssend(
  _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 com êxito. Caso contrário, o valor retornado será um código de erro.

No Fortran, o valor retornado é armazenado no parâmetro IERROR .

Fortran

    MPI_SSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
        <type> BUF(*)
        INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR

Comentários

Essa função não é local. A conclusão bem-sucedida da operação de envio depende da ocorrência de uma função de recebimento correspondente.

Essa função pode ser chamada se um recebimento correspondente é postado ou não. No entanto, a função de envio só será concluída com êxito se um recebimento correspondente for postado e a operação de recebimento tiver começado a receber a mensagem. Portanto, a conclusão de um envio síncrono não só indica que o buffer de envio pode ser reutilizado, mas também indica que o processo de recebimento começou a executar o recebimento correspondente.

Se as operações de envio e recebimento forem operações de bloqueio, o modo síncrono fornecerá semântica de comunicação síncrona; uma comunicação não é concluída em nenhuma das extremidades até que os processos de envio e recebimento tenham sido concluídos.

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

Confira também

Funções ponto a ponto de MPI

MPI_Send

MPI_Bsend

MPI_Rsend

MPI_Recv