MPI_SCATTER(3)MPI_SCATTER(3)NAMEMPI_Scatter - Sends data from one task to all other tasks in a group
SYNOPSIS
C:
#include <mpi.h>
int MPI_Scatter ( sendbuf, sendcount, sendtype,
recvbuf, recvcount, recvtype, root, comm )
void *sendbuf;
int sendcount;
MPI_Datatype sendtype;
void *recvbuf;
int recvcount;
MPI_Datatype recvtype;
int root;
MPI_Comm comm;
C++:
#include <mpi.h>
void Intracomm::Scatter(
const void* sendbuf,
int sendcount,
const Datatype& sendtype,
void* recvbuf,
int recvcount,
const Datatype& recvtype,
int root) const
Fortran:
INCLUDE "mpif.h" (or USE MPI)
<type> SENDBUF(*), RECVBUF(*)
INTEGER sendcount, sendtype, recvcount, recvtype, root, comm,
ierror
CALL MPI_SCATTER(sendbuf, sendcount, sendtype, recvbuf,
recvcount, recvtype, root, 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.
Page 1
MPI_SCATTER(3)MPI_SCATTER(3)
The MPI_IN_PLACE option as defined in the MPI 2.0 standard is also
supported in this implementation.
DESCRIPTION
The MPI_Scatter routine sends data from one task to all other tasks in a
group. This routine accepts the following parameters:
sendbuf Specifies the address of the send buffer (choice,
significant only at root)
sendcount Specifies the number of elements sent to each process
(integer, significant only at root)
sendtype Specifies the data type of the send buffer elements
(significant only at root) (handle)
recvcount Specifies the number of elements in the receive buffer
(integer)
recvtype Specifies the data type of the receive buffer elements
(handle)
root Specifies the rank of the sending process (integer)
comm Specifies the communicator (handle)
recvbuf Returns the address of the receive buffer (choice). You
may also pass in the argument MPI_IN_PLACE for the value
of recvbuf at the root. In such a case, recvcount and
rectype are ignored, and the root sends no data to itself.
The scattered vector is still assumed to contain n
segments, where n is the group size; the root-th segment,
which root should not send to itself, is not moved.
ierror Specifies the return code value for successful completion,
which is in MPI_SUCCESS. MPI_SUCCESS is defined in the
mpif.h file.
Page 2