Поделиться через


функция MPI_Bsend

Отправляет данные в указанный процесс в режиме буферизации. Эта функция возвращает значение, когда буфер отправки можно безопасно использовать повторно.

Синтаксис

int MPIAPI MPI_Bsend(
  _In_opt_ void         *buf,
           int          count,
           MPI_Datatype datatype,
           int          dest,
           int          tag,
           MPI_Comm     comm
);

Параметры

  • buf [in, необязательный]
    Указатель на буфер, содержащий отправляемые данные.

  • count
    Количество элементов в буферном массиве. Если часть данных сообщения пуста, задайте для параметра count значение 0.

  • datatype
    Тип данных элементов в буфере.

  • Dest
    Ранг целевого процесса в коммуникаторе, заданный параметром comm .

  • Тег
    Тег сообщения, который можно использовать для различения сообщений разных типов.

  • Comm
    Дескриптор для коммуникатора.

Возвращаемое значение

Возвращает MPI_SUCCESS об успешном выполнении. В противном случае возвращаемое значение является кодом ошибки.

В Fortran возвращаемое значение хранится в параметре IERROR .

Fortran

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

Комментарии

Эта функция является локальной, она может успешно завершить операцию отправки без выполнения соответствующей операции получения.

Эту функцию можно запустить независимо от того, была ли опубликована соответствующая операция получения. Он может завершить операцию отправки до отправки соответствующего получения. Его завершение не зависит от выполнения операции получения сопоставления. Если вы вызываете эту функцию и не отправляется соответствующая операция получения, реализация MPI должна буферизовать исходящее сообщение, чтобы вызов отправки смог вернуться.

Эта функция возвращает ошибку, если недостаточно места в буфере. Объем доступного буферного пространства контролируется пользователем с помощью функции MPI_Buffer_attach .

Требования

Продукт

Распространяемый пакет HPC 2012 MS-MPI, пакет HPC 2008 R2 распространяемый пакет MS-MPI, пакет HPC 2008 MS-MPI распространяемый пакет или служебные программы клиента ПАКЕТА HPC 2008

Заголовок

Mpi.h; Mpif.h

Библиотека

Msmpi.lib

DLL

Msmpi.dll

См. также раздел

Функции типа "точка — точка" MPI

MPI_Buffer_attach

MPI_Send

MPI_Ssend

MPI_Rsend

MPI_Recv