81 строка
2.7 KiB
Groff
81 строка
2.7 KiB
Groff
|
.\"Copyright 2006, Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
|
||
|
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||
|
.TH MPI_Get_count 3OpenMPI "September 2006" "Open MPI 1.2" " "
|
||
|
.SH NAME
|
||
|
\fBMPI_Get_count \fP \- Gets the number of top-level elements received.
|
||
|
|
||
|
.SH SYNTAX
|
||
|
.ft R
|
||
|
.SH C Syntax
|
||
|
.nf
|
||
|
#include <mpi.h>
|
||
|
int MPI_Get_count(MPI_Status *\fIstatus\fP, MPI_Datatype\fI datatype\fP,
|
||
|
int\fI *count\fP)
|
||
|
|
||
|
.SH Fortran Syntax
|
||
|
.nf
|
||
|
INCLUDE 'mpif.h'
|
||
|
MPI_GET_COUNT(\fISTATUS, DATATYPE, COUNT, IERROR\fP)
|
||
|
INTEGER \fISTATUS(MPI_STATUS_SIZE), DATATYPE, COUNT, IERROR\fP
|
||
|
|
||
|
.SH C++ Syntax
|
||
|
.nf
|
||
|
#include <mpi.h>
|
||
|
int Status::Get_count(const Datatype& \fIdatatype\fP) const
|
||
|
|
||
|
.SH INPUT PARAMETERS
|
||
|
.ft R
|
||
|
.TP 1i
|
||
|
status
|
||
|
Return status of receive operation (status).
|
||
|
.TP 1i
|
||
|
datatype
|
||
|
Datatype of each receive buffer element (handle).
|
||
|
|
||
|
.SH OUTPUT PARAMETERS
|
||
|
.ft R
|
||
|
.TP 1i
|
||
|
count
|
||
|
Number of received elements (integer).
|
||
|
.ft R
|
||
|
.TP 1i
|
||
|
IERROR
|
||
|
Fortran only: Error status (integer).
|
||
|
|
||
|
.SH DESCRIPTION
|
||
|
.ft R
|
||
|
Returns the number of entries received. (We count entries, each of type
|
||
|
datatype, not bytes.) The datatype argument should match the argument
|
||
|
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.)
|
||
|
.sp
|
||
|
The datatype argument is passed to MPI_Get_count to improve performance. A message might be received without counting the number of elements 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.
|
||
|
|
||
|
.SH NOTES
|
||
|
If the size of the datatype is zero, this routine will return a count of
|
||
|
zero. If the amount of data in
|
||
|
.I status
|
||
|
is not an exact multiple of the
|
||
|
size of
|
||
|
.I datatype
|
||
|
(so that
|
||
|
.I count
|
||
|
would not be integral), a
|
||
|
.I count
|
||
|
of
|
||
|
.I MPI_UNDEFINED
|
||
|
is returned instead.
|
||
|
|
||
|
.SH 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++ functions 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.
|
||
|
.sp
|
||
|
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.
|
||
|
|
||
|
.SH SEE ALSO
|
||
|
.ft R
|
||
|
.sp
|
||
|
MPI_Get_elements
|
||
|
|
||
|
|
||
|
' @(#)MPI_Get_count.3 1.20 06/03/09
|