MPI_Allgatherv(3)
MPI_Allgatherv - Gathers data from all tasks and delivers it
As shipped in IRIX 6.5.30. Last changed in IRIX 6.5.22.
NAME MPI_Allgatherv - Gathers data from all tasks and delivers it SYNOPSIS C: #include <mpi.h> int MPI_Allgatherv ( sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm ) void *sendbuf; int sendcount; MPI_Datatype sendtype; void *recvbuf; int *recvcounts; int *displs; MPI_Datatype recvtype; MPI_Comm comm; C++: #include <mpi.h> void Intracomm::Allgatherv( const void* sendbuf, int sendcount, const Datatype& sendtype, void* recvbuf, const int recvcounts[], const int displs[], const Datatype& recvtype) const Fortran: INCLUDE "mpif.h" (or USE MPI) <type> SENDBUF(*), RECVBUF(*) INTEGER sendcount, sendtype, recvcounts(*), displs(*), recvtype, comm, ierror CALL MPI_ALLGATHERV(sendbuf, sendcount, sendtype, recvbuf, recvcounts(*), displs(*), recvtype, 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. The MPI_IN_PLACE option as defined in the MPI 2.0 standard is also supported in this implementation. DESCRIPTION The MPI_Allgatherv routine gathers data from all tasks and delivers it to all. This routine accepts the following parameters: sendbuf Specifies the starting address of the send buffer (choice). You may also pass in the argument MPI_IN_PLACE for the value of sendbuf at all processes. This causes sendcount and sendtype to be ignored, and the input data of each process is assumed to be in the area where that process would receive its own contribution to the receive buffer. Please note that using the MPI_IN_PLACE option in Fortran causes the receive buffer to become a send-and- receive buffer, so a binding that includes INTENT must be marked as INOUT, not OUT. sendcount Specifies the number of elements in the send buffer (integer). sendtype Specifies the data type of the send buffer elements (handle). recvcounts Specifies the integer array (of length group size, specified in comm) containing the number of elements that are received from each process. displs Specifies the integer array (of length group size, specified in comm). Entry i specifies the displacement (relative to recvbuf ) at which to place the incoming data from process i. recvtype Specifies the data type of the receive buffer elements (handle). comm Specifies the communicator (handle). recvbuf Returns the address of the receive buffer (choice). ierror Specifies the return code value for successful completion, which is in MPI_SUCCESS. MPI_SUCCESS is defined in the mpif.h file.