Download Intel® Trace Collector Reference Guide

Transcript
Intel® Trace Collector Reference Guide
Clock Transformation
master runtime - local runtime transformed [seconds]
5e-06
0
-5e-06
-1e-05
-1.5e-05
-2e-05
0
100
200
300
400
local runtime [seconds]
clock samples #1
constrained spline correction #1
clock samples #2
500
600
700
constrained spline correction #2
clock samples #3
constrained spline correction #3
Figure 5.4: getimeofday() without NTP.
ITC knows that processes running on the same node share the same clock and thus does not
synchronize between them. The same information cannot be obtained via the MPI API and thus
ITC is conservative and assumes that clock synchronization is needed. This can be overridden with
the SYNCED-HOST configuration option. Another disadvantage is increased overhead and potentially
implementation errors in MPI (as seen in some versions of MPICH*).
If the MPI has access to a better timer source (for example a global clock in the underlying
communication hardware), then using this timer would be advantageous.
5.2.5 High Precision Event Timers (HPET)
This is a hardware timer source designed by Intel as replacement for the real time clock (RTC)
hardware commonly found in PC boards. Availability and support for it in BIOS and OS is still very
limited, therefore ITC does not support it yet.
5.2.6 POSIX clock_gettime
This is another API specified by the Single Unix Specification and POSIX. It offers a monotonic system
clock which is not affected (for good or bad) by NTP, but the current implementation in Linux/glibc
does not provide better timing via this API than through gettimeofday(). ITC currently does not
support this API.
Document number: 318119-002 50