MPI_Allgather(3)

MPI_Allgather - Gathers data from all tasks and distributes it

Showing IRIX 6.5.30 (default release). Last changed in IRIX 6.5.30.

NAME
     MPI_Allgather - Gathers data from all tasks and distributes it

SYNOPSIS
     C:

          #include <mpi.h>

          int MPI_Allgather ( sendbuf, sendcount, sendtype,
          recvbuf, recvcount, recvtype, comm)
          void             *sendbuf;
          int               sendcount;
          MPI_Datatype      sendtype;
          void             *recvbuf;
          int               recvcount;
          MPI_Datatype      recvtype;
          MPI_Comm          comm;


     C++:

          #include <mpi.h>

          void Intracomm::Allgather(
          const void*       sendbuf,
          int               sendcount,
          const Datatype&   sendtype,
          void*             recvbuf,
          int               recvcount,
          const Datatype&   recvtype) const


     Fortran:

          INCLUDE "mpif.h" (or USE MPI)

          <type> SENDBUF(*), RECVBUF(*)
          INTEGER sendcount, sendtype, recvcount, recvtype,
          comm, ierror

          CALL MPI_ALLGATHER(sendbuf, sendcount, sendtype,
          recvbuf, recvcount, 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_Allgather routine gathers data from all tasks and distributes 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)

     recvcount      Specifies the number of elements received from any process
                    (integer)

     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.