dwww Home | Manual pages | Find package

MPI_Wtime(3)                       Open MPI                       MPI_Wtime(3)

NAME
       MPI_Wtime - Returns an elapsed time on the calling processor.

SYNTAX
C Syntax
       #include <mpi.h>
       double MPI_Wtime()

Fortran Syntax
       USE MPI
       ! or the older form: INCLUDE 'mpif.h'
       DOUBLE PRECISION MPI_WTIME()

Fortran 2008 Syntax
       USE mpi_f08
       DOUBLE PRECISION MPI_WTIME()

C++ Syntax
       #include <mpi.h>
       double MPI::Wtime()

RETURN VALUE
       Time in seconds since an arbitrary time in the past.

DESCRIPTION
       MPI_Wtime  returns  a  floating-point  number  of seconds, representing
       elapsed wall-clock time since some time in the past.

       The "time in the past" is guaranteed not to change during the  life  of
       the  process.  The  user is responsible for converting large numbers of
       seconds to other units if they are preferred.

       This function is portable (it returns seconds, not "ticks"), it  allows
       high  resolution,  and carries no unnecessary baggage. One would use it
       like this:

           {
              double starttime, endtime;
              starttime = MPI_Wtime();
               ....  stuff to be timed  ...
              endtime   = MPI_Wtime();
              printf("That took %f seconds\n",endtime-starttime);
           }

       The times returned are local to the node that called them. There is  no
       requirement that different nodes return the "same" time.

NOTES
       The  boolean  variable  MPI_WTIME_IS_GLOBAL, a predefined attribute key
       that indicates whether clocks are synchronized, does not have  a  valid
       value in Open MPI, as the clocks are not guaranteed to be synchronized.

       This  function  is  intended to be a high-resolution, elapsed (or wall)
       clock. See MPI_Wtick to determine the resolution of MPI_Wtime.

       On POSIX platforms, this function may utilize a timer that  is  cheaper
       to  invoke  than  the gettimeofday() system call, but will fall back to
       gettimeofday() if a cheap high-resolution timer is not available.   The
       ompi_info command can be consulted to see if Open MPI supports a native
       high-resolution timer on your platform; see the  value  for  "MPI_WTIME
       support" (or "options:mpi-wtime" when viewing the parsable output).  If
       this value is "native", a method that is likely to be cheaper than get-
       timeofday() will be used to obtain the time when MPI_Wtime is invoked.

       For example, on platforms that support it, the clock_gettime() function
       will be used to obtain a monotonic clock value with whatever  precision
       is supported on that platform (e.g., nanoseconds).

       Note,  too, that the MCA parameter opal_timer_require_monotonic can in-
       flucence this behavior.  It defaults to true, but if set to false, Open
       MPI  may  use  a finer-grained timing mechanism (e.g., the RDTSC/RDTSCP
       clock ticks on x86_64 platforms), but is not guaranteed to be monotonic
       in  some  cases (e.g., if the MPI process is not bound to a single pro-
       cessor core).

       This function does not return an error value. Consequently, the  result
       of calling it before MPI_Init or after MPI_Finalize is undefined.

SEE ALSO
       MPI_Wtick

4.1.2                            Nov 24, 2021                     MPI_Wtime(3)

Generated by dwww version 1.14 on Sat Jan 18 08:54:21 CET 2025.