Open MPI logo

MPI_Get_address(3) man page (version 1.3.4)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing



NAME

       MPI_Get_address - Gets the address of a location in memory.

SYNTAX


C Syntax

       #include <mpi.h>
       int MPI_Get_address(void *location, MPI_Aint *address)

Fortran Syntax

       INCLUDE 'mpif.h'
       MPI_GET_ADDRESS(LOCATION, ADDRESS, IERROR)
            <type> LOCATION(*)
            INTEGER   ADDRESS, IERROR

C++ Syntax

       #include <mpi.h>
       MPI::Aint MPI::Get_address(void* location)

INPUT PARAMETERS

       location  Location in caller memory (choice).

OUTPUT PARAMETERS

       address   Address of location (integer).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_Get_address returns the byte address of a location in memory.

       Example: Using MPI_Get_address for an array.

       EAL A(100,100)
          INTEGER I1, I2, DIFF
          CALL MPI_GET_ADDRESS(A(1,1), I1, IERROR)
          CALL MPI_GET_ADDRESS(A(10,10), I2, IERROR)
          DIFF = I2 - I1
       ! The value of DIFF is 909*sizeofreal; the values of I1 and I2 are
       ! implementation dependent.

NOTES

       Current Fortran MPI codes will run unmodified and will port to any sys-
       tem. However, they may fail if addresses larger than 2^32 - 1 are  used
       in  the  program.  New codes should be written so that they use the new
       functions. This provides compatibility with C/C++ and avoids errors  on
       64-bit  architectures. However, such newly written codes may need to be
       (slightly) rewritten to port to old Fortran 77 environments that do not
       support KIND declarations.

ERRORS

       Almost  all MPI routines return an error value; C routines as the value
       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.3.4                            Nov 11, 2009               MPI_Get_address(3)

« Return to documentation listing