Why computers still struggle to tell the time

As more industries demand sub-second accuracy, computers struggle to maintain precise time

While computers manage many things with extreme precision, they have surprising difficulty keeping track of time.

It's pretty much impossible for a computer to keep exact time, although accuracy can be improved to the extent that users are willing to spend more money on the problem, said George Neville-Neil, who spoke at the Association for Computing Machinery's Applicative conference in New York last week.

"There are so many variables in trying to get time better or close to right," he said.

Neville-Neil is a software engineer who helps financial institutions and other time-sensitive organizations maintain ultra-precise measurements of time. He works on the Precision Time Protocol (PTP), an IEEE standard for relaying the time over a network with greater accuracy than the industry standard Network Time Protocol (NTP).

A computer clock can be thrown off by many factors, including network jitter, delays introduced by software, and even the environmental conditions in which the computer is operating.

To keep internal time, computers use a crystal oscillator that creates an electromagnetic signal, or a vibration that the computer uses to coordinate processor, memory, bus and motherboard operations.

But computer makers often use inexpensive crystals costing only a few cents each, which can compromise accuracy. "If you buy server-class hardware, you will get cheap crystal, and time will wander if you don't do something about it," Neville-Neil said.

As crystals age, their frequencies drift. The workload on a system can also affect a crystal's output: the more work a system does, the hotter it gets, and the heat causes the crystal vibrations to increase in frequency.

The average crystal ends up being about as accurate as a mechanical watch, meaning both can skew faster or slower over time at about the same rate. You're shiny new iPhone has about the same time accuracy as a good mechanical watch built decades ago, according to Neville-Neil.

He tested his own laptop against an expensive precision clock and found his computer had drifted off by 15 milliseconds within two hours. "This is typical behavior," he said.

Most end-users wouldn't notice such small discrepancies, but increasingly some computer systems require high precision.

Distributed systems, which harness multiple servers to work on a single task, require the computers be synchronized on the same time. Debugging distributed systems requires understanding an temporal order of events as they unfurl across different nodes.

Robotic systems also require precise time, to calibrate motions of their moving parts. Power companies use time to control the frequency of the alternating current delivered to customers; U.S. power grids need time to be counted out 60 times a second, for instance.

The base stations for next-generation LTE (Long-Term Evolution) cellular networks need to synchronize their operations within 1,100 nanoseconds. And in the financial world, high frequency trading requires precise measurements, as automated traders vie to complete orders in milliseconds.

Of course, most servers can get outside help, by synchronizing over the Internet from one of the world's official time keepers, such as the U.S. Naval Observatory or the National Institute of Standards and Technology.

Getting the correct time from the Internet also has pitfalls, though. A NIST server could spit out a message with the exact time, but there's a slight lag before that message gets back to the server sending the request. Server software can estimate how long the messages will take to get through the network, but each trip may vary depending on congestion.

By default, NTP, used by most servers for time synchronization, polls a master clock once every 64 seconds, a frequency that can only be increased to about every 15 seconds, limiting accuracy.

NTP also has difficulty maintaining accuracy in virtualized cloud environments, often for mysterious reasons. "Getting accurate time out of virtual machines is something that has plagued all of the virtual machine providers," Neville-Neil said. VMware has worked on improving the time accuracy of its virtual machines, though for many general use cloud providers, such as Amazon, exact time measurement remains a challenge.

Even when checking an outside master clock, computer software will introduce additional distortions. The operating system typically digests network packets in batches, delaying time packets. And the software for managing time may be pushed down the processing queue in favor of other jobs.

Precision Time Protocol, the IEEE standard, was developed to offer servers even greater accuracy. It's used by the financial industry, the power industry and telecommunications companies.

There is no magic that makes PTP more accurate than NTP, other than the fact that it polls a master clock more often, Neville-Neil said. PTP can check a master source every second, for those organizations willing to allocate more network bandwidth. Using multicasting, all the servers see the same time packet at the same time.

"You can always build a more accurate time system, though it generally costs an order of magnitude more money per accuracy level," Neville-Neil said.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Join the newsletter!

Or

Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.

Tags softwareapplication developmentDevelopment tools

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Joab Jackson

IDG News Service
Show Comments

Father’s Day Gift Guide

Brand Post

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Luke Hill

MSI GT75 TITAN

I need power and lots of it. As a Front End Web developer anything less just won’t cut it which is why the MSI GT75 is an outstanding laptop for me. It’s a sleek and futuristic looking, high quality, beast that has a touch of sci-fi flare about it.

Emily Tyson

MSI GE63 Raider

If you’re looking to invest in your next work horse laptop for work or home use, you can’t go wrong with the MSI GE63.

Laura Johnston

MSI GS65 Stealth Thin

If you can afford the price tag, it is well worth the money. It out performs any other laptop I have tried for gaming, and the transportable design and incredible display also make it ideal for work.

Andrew Teoh

Brother MFC-L9570CDW Multifunction Printer

Touch screen visibility and operation was great and easy to navigate. Each menu and sub-menu was in an understandable order and category

Louise Coady

Brother MFC-L9570CDW Multifunction Printer

The printer was convenient, produced clear and vibrant images and was very easy to use

Edwina Hargreaves

WD My Cloud Home

I would recommend this device for families and small businesses who want one safe place to store all their important digital content and a way to easily share it with friends, family, business partners, or customers.

Featured Content

Product Launch Showcase

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?