PEP 418: Add a table summarizing system clocks
This commit is contained in:
parent
5d38774ed5
commit
2e69f4914f
41
pep-0418.txt
41
pep-0418.txt
|
@ -185,20 +185,25 @@ Summary
|
||||||
|
|
||||||
Table summarizing all monotonic clocks:
|
Table summarizing all monotonic clocks:
|
||||||
|
|
||||||
|
|
||||||
========================= =============== =============== ================ ====================
|
========================= =============== =============== ================ ====================
|
||||||
Name Resolution Accuracy Adjusted by NTP? Action on suspend
|
Name Resolution Accuracy Adjusted by NTP? Action on suspend
|
||||||
========================= =============== =============== ================ ====================
|
========================= =============== =============== ================ ====================
|
||||||
CLOCK_MONOTONIC_RAW 1 ns ? No Stopped
|
CLOCK_MONOTONIC_RAW 1 ns (*) No Stopped
|
||||||
gethrtime 1 ns ? No Not stopped
|
gethrtime 1 ns (*) No Not stopped
|
||||||
|
CLOCK_HIGHRES 1 ns (*) No ?
|
||||||
|
CLOCK_MONOTONIC 1 ns (*) Yes on Linux Stopped on Linux
|
||||||
mach_absolute_time() 1 ns ? No ?
|
mach_absolute_time() 1 ns ? No ?
|
||||||
CLOCK_HIGHRES 1 ns ? No ?
|
|
||||||
CLOCK_MONOTONIC 1 ns ? Yes on Linux Stopped on Linux
|
|
||||||
QueryPerformanceCounter() \- 0.3 ns - 5 ns No Accuracy issue
|
QueryPerformanceCounter() \- 0.3 ns - 5 ns No Accuracy issue
|
||||||
GetTickCount[64]() 1 ms 1 ms - 15 ms No Include suspend time
|
GetTickCount[64]() 1 ms 1 ms - 15 ms No Include suspend time
|
||||||
timeGetTime() 1 ms 1 ms - 15 ms No ?
|
timeGetTime() 1 ms 1 ms - 15 ms No ?
|
||||||
========================= =============== =============== ================ ====================
|
========================= =============== =============== ================ ====================
|
||||||
|
|
||||||
|
(*) The accurary of monotonic clocks depends on the operating system.
|
||||||
|
|
||||||
|
* Linux: ?
|
||||||
|
* FreeBSD: ?
|
||||||
|
* Solaris: ?
|
||||||
|
|
||||||
The resolution is the smallest difference between two timestamps supported by
|
The resolution is the smallest difference between two timestamps supported by
|
||||||
the format used by the clock. For example, clock_gettime() uses a timespec
|
the format used by the clock. For example, clock_gettime() uses a timespec
|
||||||
structure which has two integer fileds, tv_sec and tv_nsec, so the resolution
|
structure which has two integer fileds, tv_sec and tv_nsec, so the resolution
|
||||||
|
@ -401,6 +406,32 @@ On Solaris, gethrtime() is the same as clock_gettime(CLOCK_MONOTONIC).
|
||||||
System time
|
System time
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
|
The system time can be set manually by the system administrator or
|
||||||
|
automatically by a NTP daemon.
|
||||||
|
|
||||||
|
Summary
|
||||||
|
^^^^^^^
|
||||||
|
|
||||||
|
Table summarizing all system time clocks:
|
||||||
|
|
||||||
|
========================= =============== ===============
|
||||||
|
Name Resolution Accuracy
|
||||||
|
========================= =============== ===============
|
||||||
|
CLOCK_REALTIME 1 ns (*)
|
||||||
|
GetSystemTimeAsFileTime 100 ns 1 ms - 15 ms
|
||||||
|
gettimeofday() 1 µs (*)
|
||||||
|
ftime() 1 ms (*)
|
||||||
|
time() 1 sec 1 sec
|
||||||
|
========================= =============== ===============
|
||||||
|
|
||||||
|
(*) The accurary of system clocks depends on the operating system.
|
||||||
|
|
||||||
|
* Windows: 1 ms - 15 ms
|
||||||
|
* Linux: ?
|
||||||
|
* Mac OS X: ?
|
||||||
|
* FreeBSD: ?
|
||||||
|
|
||||||
|
|
||||||
Windows: GetSystemTimeAsFileTime
|
Windows: GetSystemTimeAsFileTime
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue