MPI_BSEND(3)MPI_BSEND(3)NAMEMPI_Bsend - Performs a basic send with user-specified buffering
SYNOPSIS
C:
#include <mpi.h>
int MPI_Bsend( buf, count, datatype, dest, tag, comm )
void *buf;
int count, dest, tag;
MPI_Datatype datatype;
MPI_Comm comm;
C++:
#include <mpi.h>
void Comm::Bsend(
const void* buf,
int count,
const Datatype& datatype,
int dest,
int tag) const
Fortran:
INCLUDE "mpif.h" (or USE MPI)
<type> BUF(*)
INTEGER count, datatype, dest, tag, comm,
ierror
CALL MPI_BSEND(buf, count, datatype, dest,
tag, comm, ierror)
STANDARDS
This release implements the MPI 1.2 standard, as documented by the MPI
Forum in the spring 1997 release of MPI: A Message Passing Interface
Standard.
DESCRIPTION
The MPI_Bsend routine performs a basic send operation with user-specified
buffering. This routine accepts the following parameters:
buf Specifies the initial address of the send buffer (choice)
Page 1
MPI_BSEND(3)MPI_BSEND(3)
count Specifies the number of elements in the send buffer
(nonnegative integer)
datatype Specifies the data type of each send buffer element (handle)
dest Specifies the rank of the destination (integer)
tag Specifies the message tag (integer)
comm Specifies the communicator (handle)
ierror Specifies the return code value for successful completion,
which is in MPI_SUCCESS. MPI_SUCCESS is defined in the
mpif.h file.
NOTES
This send operation is provided as a convenience function; it allows the
user to send messages without worrying about where the messages are
buffered (of course, the user must have provided buffer space by using
the MPI_Buffer_attach(3) routine).
The buffer space cannot be reused unless you are certain that the message
has been received (not just that it should have been received). In C,
you can force the messages to be deliverd by using the following
routines:
MPI_Buffer_detach( &b, &n );
MPI_Buffer_attach( b, n );
(The MPI_Buffer_detach(3) routine will not complete until all buffered
messages are delivered.)
SEE ALSOMPI_Bsend_init(3),MPI_Buffer_attach(3), MPI_Buffer_detach(3),
MPI_Ibsend(3)
Page 2