[Python-Dev] PEP 418: Add monotonic time, performance counter and process time functions (original) (raw)

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 http://en.wikipedia.org/wiki/Accuracy_and_precision).



More information about the Python-Dev mailing list