.\" -*- nroff -*- .\" Copyright 2013 Los Alamos National Security, LLC. All rights reserved. .\" Copyright (c) 2010-2014 Cisco Systems, Inc. All rights reserved. .\" Copyright 2006-2008 Sun Microsystems, Inc. .\" Copyright (c) 1996 Thinking Machines Corporation .\" $COPYRIGHT$ .TH MPI_Bsend 3 "Jan 31, 2017" "2.0.2" "Open MPI" .SH NAME \fBMPI_Bsend\fP \- Basic send with user-specified buffering. .SH SYNTAX .ft R .SH C Syntax .nf #include int MPI_Bsend(const void \fI*buf\fP, int\fI count\fP, MPI_Datatype\fI datatype\fP, int\fI dest\fP, int\fI tag\fP, MPI_Comm\fI comm\fP) .fi .SH Fortran Syntax .nf INCLUDE 'mpif.h' MPI_BSEND(\fIBUF\fP,\fI COUNT\fP,\fIDATATYPE\fP,\fI DEST\fP,\fI TAG\fP,\fI COMM\fP,\fI IERROR\fP) \fIBUF\fP(*) INTEGER \fICOUNT\fP,\fI DATATYPE\fP,\fI DEST\fP,\fI TAG\fP,\fI COMM\fP,\fI IERROR\fP .fi .SH C++ Syntax .nf #include void Comm::Bsend(const void* \fIbuf\fP, int \fIcount\fP, const Datatype& \fIdatatype\fP, int \fIdest\fP, int \fItag\fP) const .fi .SH INPUT PARAMETERS .ft R .TP 1i buf Initial address of send buffer (choice). .TP 1i count Number of entries in send buffer (nonnegative integer). .TP 1i datatype Datatype of each send buffer element (handle). .TP 1i dest Rank of destination (integer). .TP 1i tag Message tag (integer). .TP 1i comm Communicator (handle). .SH OUTPUT PARAMETER .ft R .TP 1i IERROR Fortran only: Error status (integer). .SH DESCRIPTION .ft R MPI_Bsend performs a buffered-mode, blocking send. .SH NOTES .ft R 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 MPI_Buffer_attach). .sp In deciding how much buffer space to allocate, remember that the buffer space is not available for reuse by subsequent \fIMPI_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: .nf MPI_Buffer_attach( b, n*sizeof(double) + MPI_BSEND_OVERHEAD ); for (i=0; i