MPI_Type_get_true_extent(3)        Open MPI        MPI_Type_get_true_extent(3)



NAME
       MPI_Type_get_true_extent - Returns the true lower bound and extent of a
       data type's corresponding typemap, ignoring MPI_UB and MPI_LB markers.


SYNTAX
C Syntax
       #include <mpi.h>
       int MPI_Type_get_true_extent(MPI_Datatype datatype,
            MPI_Aint *true_lb, MPI_Aint *true_extent)


Fortran Syntax (see FORTRAN 77 NOTES)
       INCLUDE 'mpif.h'
       MPI_TYPE_GET_TRUE_EXTENT(DATATYPE, TRUE_LB, TRUE_EXTENT, IERROR)
            INTEGER   DATATYPE, IERROR
            INTEGER(KIND=MPI_ADDRESS_KIND) TRUE_LB, TRUE_EXTENT


C++ Syntax
       #include <mpi.h>
       void MPI::Datatype::Get_true_extent(MPI::Aint& true_lb,
            MPI::Aint& true_extent) const


INPUT PARAMETER
       datatype  Data type for which information is wanted (handle).


OUTPUT PARAMETERS
       true_lb   True lower bound of data type (integer).

       true_extent
                 True size of data type (integer).

       IERROR    Fortran only: Error status (integer).


DESCRIPTION
       The true_lb parameter returns the offset of the lowest unit of store
       that is addressed by the data type, that is, the lower bound of the
       corresponding typemap, ignoring MPI_LB markers. The true_extent
       parameter returns the true size of the data type, that is, the extent
       of the corresponding typemap, ignoring MPI_LB and MPI_UB markers, and
       performing no rounding for alignment.

       The true_extent is the minimum number of bytes of memory necessary to
       hold a data type, uncompressed.

       See Section 4.14.3 of the MPI-2 standard for more detailed definitions
       of these parameters in relation to the typemap.


FORTRAN 77 NOTES
       The MPI standard prescribes portable Fortran syntax for the TRUE_LB and
       TRUE_EXTENT arguments only for Fortran 90. FORTRAN 77 users may use the
       non-portable syntax

            INTEGER*MPI_ADDRESS_KIND TRUE_LB
       or
            INTEGER*MPI_ADDRESS_KIND TRUE_EXTENT

       where MPI_ADDRESS_KIND is a constant defined in mpif.h and gives the
       length of the declared integer in bytes.


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.

       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.





1.4.1                            Jan 14, 2010      MPI_Type_get_true_extent(3)
