[Python-Dev] PEP 418: Add monotonic time, performance counter and process time functions
Stephen J. Turnbull
stephen at xemacs.org
Wed Apr 18 08:45:31 CEST 2012
On Wed, Apr 18, 2012 at 8:25 AM, Victor Stinner
<victor.stinner at gmail.com> wrote:
> Ok ok, resolution / accuracy / precision are confusing (or at least
> not well known concepts).
Maybe not to us, but in fields like astronomy and mechanical
engineering there are commonly accepted definitions:
Resolution: the smallest difference between two physical values that
results in a different measurement by a given instrument.
Precision: the amount of deviation among measurements of the same
physical value by a single instrument.
Accuracy: the amount of deviation of measurements by a given
instrument from true values.
As usual there are issues of average vs. worst case, different
resolution/precision/accuracy over the instrument's range, etc. which
need to be considered in reporting values for these properties.
A typical application to clocks would be the duration of one tick. If
the clock ticks once per second and time values are reported in
nanoseconds, the /resolution/ is *1 billion* nanoseconds, not *1*
nanosecond. /Precision/ corresponds to the standard deviation of
tick durations. It is not necessarily the case that a precise
instrument will be accurate; if every tick is *exactly* 59/60 seconds,
the clock is infinitely precise but horribly inaccurate for most
purposes (it loses an hour every three days, and you'll miss your
favorite TV show!) And two /accurate/ clocks should report the same
times and the same durations when measuring the same things.
I don't really care if Python decides to use idiosyncratic
definitions, but the above are easy enough to find (eg
More information about the Python-Dev