logoalt Hacker News

V__yesterday at 7:03 PM18 repliesview on HN

Has anyone here ever needed microsecond precision? Would love to hear about it.


Replies

Aromasinyesterday at 8:56 PM

I worked at Altera (FPGA supplier) as the Ethernet IP apps engineer for Europe for a few years. All the big telecoms (Nokia, Ericsson, Cisco, etc) use Precision Time Protocol (PTP) in some capacity and all required clocks to be ns levels for accuracy. Sometimes as low a 10ns at the boundary. Any imperfection in the local clock directly converts into timestamp error, and timestamp error is what limits PTP synchronization performance. Timestamps are the fundamental observable in PTP. Quantization and jitter create irreducible timestamp noise. That noise directly limits offset and delay estimation. Errors accumulate across network elements and internal clock error must be much smaller than the system requirement.

I think most people would look at the error and think "what's the big deal" but at all the telecoms customers would be scrambling to find a clock that hasn't fallen out of sync.

sgillenyesterday at 7:31 PM

We don't use NTP, but for robotics, stereo camera synchronization we often want the two frames to be within ~10us of eachother. For sensor fusion we then also need a lidar on PTP time to be translated to the same clock domain as cameras, for which we also need <~10us.

We actually disable NTP entirely (run it once per day or at boot) to avoid clocks jumping while recording data.

show 2 replies
andrewxdiamondyesterday at 7:14 PM

We use nanosecond precision driven by GPS clocks. That timestamp in conjunction with star tracker systems gives us reliable positioning information for orbital entities.

https://en.wikipedia.org/wiki/Star_tracker

grumbelbartyesterday at 9:58 PM

Lightning detection. You have a couple of ground stations with known positions that wait for certain electromagnetic puses, and which record the timestamps of such pulses. With enough stations you can triangulate the location of the source of each pulse. Also a great way to detect nuclear detonations.

There is a german club that builds and distrubutes such stations (using GPS for location and timing), with a quite impressive global coverage by now:

https://www.blitzortung.org

zamadatixyesterday at 7:51 PM

(Assuming "precision" really meant "accuracy") The network equipment I work on requires sub microsecond time sync on the network for 5G providers and financial trading customers. Ideally they'd just get it from GPS direct, but that can be difficult to do for a rack full of servers. Most of the other PTP use cases I work with seem to be fine with multiples of microseconds, e.g. Audio/Video over the network or factory floor things like PLCs tend to be find with a few us over the network.

Perhaps a bit more boring than one might assume :).

peaseageeyesterday at 8:56 PM

At a previous role, we needed nanosecond precision for a simulcast radio communications system. This was to allow for wider transmission for public safety radio systems without having to configure trunking. We could even adjust the delay in nanoseconds to move the deadzones away from inhabited areas.

We solved this by having GPS clocks at each tower as well as having the app servers NTP with each other. The latter burned me once due to some very dumb ARP stuff, but that's a story for another day.

IceWreckyesterday at 7:24 PM

We need nanosecond precision for trading - basically timestamping exchange/own/other events and to measure latency.

marcosdumayyesterday at 7:05 PM

You probably want to ask about accuracy. Any random microcontroller from the 90s needs microsecond precision.

pi-ratyesterday at 8:55 PM

High speed finance is msec and below. Fastest publically known tick to trade is just shy of 14 nanos.

Timekeeping starts to become really hard, often requiring specialized hardware and protocols.

themafiayesterday at 11:03 PM

If you want sample accurate audio transmission you're going to want resolution on the order of 10s of microseconds.

bobmcnamarayesterday at 8:45 PM

Yes, but always got it from GPS so presumably they'd be off about the same amount.

Distributed sonar, allows placing receivers willy-nilly and aligning the samples later.

Remote microphone switching - though for this you wouldn't notice 5us jitter, it's just that the system we designed happened to have granularity that good.

thadtyesterday at 10:13 PM

Nuclear measurements, where the speed of a gamma ray flying across a room vs a neutron is relevant. But that requires at least nanosecond time resolution, and you’re a long way from thinking about NTP.

hnuser123456yesterday at 7:06 PM

The high frequency trading guys

edit: also the linked slides in TFA

immibisyesterday at 9:12 PM

I believe LTE and 5G networks require it to coordinate timeslots between overlapping cells. Of course, they can use whatever reference they want, as long as all the cells are using the same one - it doesn't have to be UTC. Some (parts of) networks transmit it across the network, while others have independent GPS receivers at each cell site.

Synchronization is also required for SDH networks. Don't know if those are still used.

Someone else referenced low power ham radio modes like WSPR, which I also don't know much about, but I can imagine they have timeslots linked to UTC and require accuracy. Those modes have extremely low data rates and narrow bandwidths, requiring accurate synchronization. I don't know if they're designed to self-synchronize, or need an external reference.

When multiple transmitters are transmitting the same radio signal (e.g. TV) they might need to be synchronized to a certain phase relationship. Again, don't know much about it

essephyesterday at 7:25 PM

Telecom.

Precision Time Protocol gets you sub-microsecond.

https://en.wikipedia.org/wiki/Precision_Time_Protocol

jeffbeeyesterday at 9:11 PM

A database like Google Spanner has higher latency in proportion to the uncertainty about the time. Driving the time uncertainty down into the microsecond range, or lower, keeps latency low.

idiotsecantyesterday at 8:05 PM

Lots of things do. Shoot, even plain old TDM needs timing precision on the order of picoseconds to nanoseconds.

show 1 reply
loegyesterday at 7:23 PM

I mean, we routinely benchmark things that take microseconds or less. I've seen a 300 picosecond microbenchmark (single cycle at 3GHz). No requirement that absolute time is correct, though.