.\" Man page generated from reStructuredText. . .TH "MPI_BSEND" "3" "Jul 22, 2024" "" "Open MPI" . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .sp \fI\%MPI_Bsend\fP — Basic send with user\-specified buffering. .SH SYNTAX .SS C Syntax .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C #include int MPI_Bsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm) .ft P .fi .UNINDENT .UNINDENT .SS Fortran Syntax .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C USE MPI ! or the older form: INCLUDE \(aqmpif.h\(aq MPI_BSEND(BUF, COUNT,DATATYPE, DEST, TAG, COMM, IERROR) BUF(*) INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR .ft P .fi .UNINDENT .UNINDENT .SS Fortran 2008 Syntax .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C USE mpi_f08 MPI_Bsend(buf, count, datatype, dest, tag, comm, ierror) TYPE(*), DIMENSION(..), INTENT(IN) :: buf INTEGER, INTENT(IN) :: count, dest, tag TYPE(MPI_Datatype), INTENT(IN) :: datatype TYPE(MPI_Comm), INTENT(IN) :: comm INTEGER, OPTIONAL, INTENT(OUT) :: ierror .ft P .fi .UNINDENT .UNINDENT .SH INPUT PARAMETERS .INDENT 0.0 .IP \(bu 2 \fBbuf\fP : Initial address of send buffer (choice). .IP \(bu 2 \fBcount\fP : Number of entries in send buffer (nonnegative integer). .IP \(bu 2 \fBdatatype\fP : Datatype of each send buffer element (handle). .IP \(bu 2 \fBdest\fP : Rank of destination (integer). .IP \(bu 2 \fBtag\fP : Message tag (integer). .IP \(bu 2 \fBcomm\fP : Communicator (handle). .UNINDENT .SH OUTPUT PARAMETERS .INDENT 0.0 .IP \(bu 2 \fBierror\fP : Fortran only: Error status (integer). .UNINDENT .SH DESCRIPTION .sp \fI\%MPI_Bsend\fP performs a buffered\-mode, blocking send. .SH NOTES .sp This send is provided as a convenience function; it allows the user to send messages without worrying about where they are buffered (because the user must have provided buffer space with \fI\%MPI_Buffer_attach\fP). .sp In deciding how much buffer space to allocate, remember that the buffer space is not available for reuse by subsequent \fI\%MPI_Bsend\fPs unless you are certain that the message has been received (not just that it should have been received). For example, this code does not allocate enough buffer space: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C MPI_Buffer_attach( b, n*sizeof(double) + MPI_BSEND_OVERHEAD ); for (i=0; i