MPI_Get_count(3OpenMPI) MPI_Get_count(3OpenMPI)
NAME
MPI_Get_count - Gets the number of top-level elements received.
SYNTAX
C Syntax
#include <mpi.h>
int MPI_Get_count(MPI_Status *status, MPI_Datatype datatype,
int *count)
Fortran Syntax
INCLUDE 'mpif.h'
MPI_GET_COUNT(STATUS, DATATYPE, COUNT, IERROR)
INTEGER STATUS(MPI_STATUS_SIZE), DATATYPE, COUNT, IERROR
C++ Syntax
#include <mpi.h>
int Status::Get_count(const Datatype& datatype) const
INPUT PARAMETERS
status Return status of receive operation (status).
datatype Datatype of each receive buffer element (handle).
OUTPUT PARAMETERS
count Number of received elements (integer).
IERROR Fortran only: Error status (integer).
DESCRIPTION
Returns the number of entries received. (We count entries, each of type datatype, not bytes.) The datatype argument should match the argu-
ment provided by the receive call that set the status variable. (As explained in Section 3.12.5 in the MPI-1 Standard, "Use of General
Datatypes in Communication," MPI_Get_count may, in certain situations, return the value MPI_UNDEFINED.)
The datatype argument is passed to MPI_Get_count to improve performance. A message might be received without counting the number of ele-
ments it contains, and the count value is often not needed. Also, this allows the same function to be used after a call to MPI_Probe.
NOTES
If the size of the datatype is zero, this routine will return a count of zero. If the amount of data in status is not an exact multiple of
the size of datatype (so that count would not be integral), a count of MPI_UNDEFINED is returned instead.
ERRORS
Almost all MPI routines return an error value; C routines as the value of the function and Fortran routines in the last argument. C++ func-
tions do not return errors. If the default error handler is set to MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
will be used to throw an MPI:Exception object.
Before the error value is returned, the current MPI error handler is called. By default, this error handler aborts the MPI job, except for
I/O function errors. The error handler may be changed with MPI_Comm_set_errhandler; the predefined error handler MPI_ERRORS_RETURN may be
used to cause error values to be returned. Note that MPI does not guarantee that an MPI program can continue past an error.
SEE ALSO
MPI_Get_elements
Open MPI 1.2 September 2006 MPI_Get_count(3OpenMPI)