101 строка
3.2 KiB
Plaintext
101 строка
3.2 KiB
Plaintext
|
.\" -*- nroff -*-
|
||
|
.\" Copyright 2013 Los Alamos National Security, LLC. All rights reserved.
|
||
|
.\" Copyright 2006-2008 Sun Microsystems, Inc.
|
||
|
.\" Copyright (c) 1996 Thinking Machines Corporation
|
||
|
.\" $COPYRIGHT$
|
||
|
.TH MPI_Get_count 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
|
||
|
.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(const MPI_Status *\fIstatus\fP, MPI_Datatype\fI datatype\fP,
|
||
|
int\fI *count\fP)
|
||
|
|
||
|
.fi
|
||
|
.SH Fortran Syntax
|
||
|
.nf
|
||
|
USE MPI
|
||
|
! or the older form: INCLUDE 'mpif.h'
|
||
|
MPI_GET_COUNT(\fISTATUS, DATATYPE, COUNT, IERROR\fP)
|
||
|
INTEGER \fISTATUS(MPI_STATUS_SIZE), DATATYPE, COUNT, IERROR\fP
|
||
|
|
||
|
.fi
|
||
|
.SH Fortran 2008 Syntax
|
||
|
.nf
|
||
|
USE mpi_f08
|
||
|
MPI_Get_count(\fIstatus\fP, \fIdatatype\fP, \fIcount\fP, \fIierror\fP)
|
||
|
TYPE(MPI_Status), INTENT(IN) :: \fIstatus\fP
|
||
|
TYPE(MPI_Datatype), INTENT(IN) :: \fIdatatype\fP
|
||
|
INTEGER, INTENT(OUT) :: \fIcount\fP
|
||
|
INTEGER, OPTIONAL, INTENT(OUT) :: \fIierror\fP
|
||
|
|
||
|
.fi
|
||
|
.SH C++ Syntax
|
||
|
.nf
|
||
|
#include <mpi.h>
|
||
|
int Status::Get_count(const Datatype& \fIdatatype\fP) const
|
||
|
|
||
|
.fi
|
||
|
.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
|
||
|
If the value to be returned is larger than can fit into the
|
||
|
.I count
|
||
|
parameter, an MPI_ERR_TRUNCATE exception is invoked.
|
||
|
.sp
|
||
|
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
|
||
|
|
||
|
|