More About Timing Accuracy

The Datalog plugin records data at regular intervals from sources presumed to provide current information. Sampling is initiated by javascript's setInterval and run in parallel. Results are time stamped with the current time as reported by javascript's Date.now function at initiation.

Timer drift and jumps as measured by network time over a ten day period. plot

Sampling intervals can run long by milliseconds routinely and may be delayed by minutes or hours due to power saving mechanisms.

Time stamps are as trustworthy as the host system clock which for a networked device should have excellent long term stability.

Network time service clients ntpd and timesyncd differ in how they make system clock adjustments. The host clock ticking can be "disciplined" by ntpd for smooth synchronization with the network while the lighter-weight timesyncd is content to make sudden adjustments of a fraction of a second.

Our study of a Digital Ocean Ubuntu 14.04 minimum configuration in their San Francisco datacenter saw a routine interval drift of 5 to 10 milliseconds over 20 second intervals while timestamps would sometimes jump 100 to 300 milliseconds possibly due to timesyncd adjustments.