- In my hand right now is an atomic clock. Like the real kind with rubidium inside, and installing it promises
to make your computer 100 times faster. That is, if your computer happens to
be a massive data center. But seriously though,
without a data center, we've got it working here in our lab, and based on what we've seen, this could be the biggest leap forward in computing this decade. It doesn't sound like the
biggest deal on the surface. You know, nanosecond accurate time, synchronized between every
computer on a network. So what right? But so much computing overhead
goes into compensating for signal delays that this could do everything
from improving the efficiency of live video broadcasts, to dramatically reducing in game latency, to enhancing online security. And the craziest thing is
that almost every device from this computer to my phone already has the necessary
hardware to implement it. All they need is an accurate pulse from a card like this one, and they're off to the races. And we're going to show
you guys how it works. And we're going to tell you
about our sponsor, Glasswire. Are you lagging out while gaming? Use Glasswire and see what
apps are wasting your bandwidth and causing your games to lag. Get 25% off using offer code
Linus at the link down below. (upbeat music) Highly precise timing is a pretty mature
technology at this point, and it's already being used in a number of critical
applications, like power stations, where a mismatch between the AC output and the phase of the electrical
grid could cause a big fire. Or broadcasting where all the cameras need to be synced up on the
jumbotron to avoid tearing, or for scientific research like
at the large Hadron Collider or our friends over at LIGO. What is new about it is the affordability. Now at $1,600, most gamers would probably
choose an RTX 3090, or really almost anything else, but in the data center,
that is chump change, and it's a fraction of what
these solutions used to cost. So here's our setup to show
you guys why this is important and just how good this technology is. Inside this Nook 9 extreme
is a rubidium atomic clock, which synchronizes to
GPS time periodically using this antenna. Oh, this one. Not that it really needs to, given that a clock like this should drift about one second every 100 million years. And then over here, this
is another computer. Now in the course of communicating
with our first computer, this one would normally attach timestamps to every data packet to
ensure that they are processed and responded to in the correct order. But we've got a big problem. You see these two computers, and probably the one
you're using right now are synchronized using the
network time protocol or NTP. And NTP was awesome, back when it was created by
David Mills back in the 1980s. But to say that computers
have gotten a little faster and the internet has expanded since then would be a gross understatement. So look at this, we've set each one of our computers to output a timing pulse every second, you can see right here,
they're pretty close within a few milliseconds of true time. Oh, the blue one came unplugged. Hello? Oh God, it broke a piece off of it. Is it alive? Please tell me we get
signal main screen turn on. - Yep. It's there. - Oh, thank God. Okay. We need tape. - Do you want better tape?
- No. See the one in the back there has actually managed to go, each one of these lines
represents a hundred milliseconds, so a hundred, 200, about 270 milliseconds ahead of true time, which is this yellow mark right here. While the green one has actually drifted about 120 milliseconds back. So the difference between them
is about 400 milliseconds, nearly half a second. But while that might
have been fine in 1980, modern computers can
perform literally millions of calculations in that time, which means that our speedy boy over here ends up waiting around for
the slower second machine. Now watch this. Da da da control shift V, da da da and da da da. And it's time for an impromptu vlog. This is Ahmad who is much smarter than us and knows how this works and he is remoted into our computer to synchronize our nonsense here. He likes hand-built this card, apparently. What Ahmad is doing right now is enabling the precision
time protocol or PTP, which should clamp things down to be nearly a million times more accurate than they were before. How are your kids doing Ahmad? I think I hear some
kids in the background. Getting lots of sleep, I bet. Right? - [Ahmad] Yeah like everyone was like, "oh you know, the moment
he hits three months, "he'll be good" it's not true. (laughing) - Not true. I apologize for Alex bugging up all of your carefully configured stuff. - [Ahmad] No man, don't worry about it. Alex is doing great. - Did you just Alex is inbred? - What?
- Doing great. - We think we know what happened. The NIC that is behind our time card here seems to be experiencing some kind of thermal shutdown event. Whose idea was it to do this with nooks? Yay, I think we got it. Okay. All right. Awesome. Thank you. Now that we're synced up, we can zoom all the way in, we're at a hundred milliseconds
per line in our grid here, we can go all the way
down to one microsecond, you can see the differences
about 1.2 micro seconds. That's about a thousand nanoseconds. And when we're talking about
time increments that small, I mean, you can actually see that this offset is very constant between the two. That's because that's the
amount of time it actually takes for the signal to pass through the FPGA, through the PCI express bus. So we can actually put an offset in to have this thing dialed
in exactly to GPS time. But why does it matter? I'm so glad you asked. With two computers, honestly speaking, it doesn't very much, but if you're Facebook or Google or let's say the entire internet, making sure that every user
gets the correct information is very important. I mean, you don't want
someone's friendless to change based on which server they
connect to for instance, right? So this means that every
time a request is made for some information, checks need to be done to ensure that the user is getting the most current information. But deciding of what the
most current information is can add a lot of overhead. In the past if there was
some kind of disagreement, it was typically settled with a vote. So the request goes out and
all of the machines need to decide what information
is correct by voting. When half of them machines say
the information is correct, it gets sent to the user. This is easy enough if you just
have a handful of machines, but when you're dealing with a data center where thousands or even millions
of machines are involved, I think you can see why
having all of them vote on every single user
request isn't feasible. So nowadays instead of a vote,
a proposal is blasted out, basically asking everyone, Hey, is this the correct dog photo? And if no one yells back, no, it needs to have the text "Mondays", then the photo gets sent to the user. But the thing is that this method assumes that all of the clocks are
in sync in order to work. And if they aren't, we
can run into problems. For example, let's say that system A is two
milliseconds behind true time and system B is three
milliseconds ahead of true time. These are totally realistic
number by the way, as you guys saw. If system B sends out a message
and system A receives it almost immediately, in
less than that difference, less than five milliseconds,
system A will think that it got a message from the future. Now, thankfully, the smart people at these
massive data centers, they have some kind of fancy code to allow different machines to deal with receiving timestamps
data in the future, right? No, they actually don't. It turns out that the
most foolproof solution to this problem is to just add a massive
20 millisecond delay to every single request, to ensure that every machine
is always receiving data that is timestamped from the past. That is why adding an
atomic clock to the mix and getting the timing
of every computer down to this nanosecond scale of
precision and accuracy, both has such a profound performance impact. In Facebook's case, they were able to get
100 times the throughput by eliminating that 20 millisecond delay. What makes this incredibly cool though, is that it can be used for way more than helping Facebook
efficiently sell your data or a hedge fund make millions with computerized transactions. The entire project is open source and can be implemented by
anyone any way they would like. Like if we wanted nanoseconds
level order information on LTTstore.com so we know exactly who got a mouse pad before they're sold out again. One of the other ways that this could affect
you in the coming years is competitive gaming. By having highly accurate clocks in every computer around the world, packet timestamping would
become a lot simpler and especially more fair for people who are
geographically farther away from the game server. I could be playing
battlefield for instance, against someone in Korea, and since the server would know down to a few dozen
nanoseconds who clicked first, it would always accurately
determine who got a headshot and first going back
to the load-out screen. So Ahmad who hand-built our
time card and sent it to us, really wants to create a
simpler version of this that could be put into any NBME slot to give gamers access to this technology. And since there's a good chance that the NIC in their
computer already supports PTP, it's not even that crazy of
a goal in the longer term. Hey, Bigfoot Network's
dream of a gaming NIC that actually does anything
could finally come true. - [Alex] Yeah. - And implementing this
super accurate timing also has some really cool applications for the fiber optic cables
running beneath the ocean. Roughly every 80 kilometers or so there's a signal booster
going across the ocean, and if one of those goes down, well, it shouldn't be a surprise to you that accessing a cable run that is several kilometers underwater is pretty inconvenient. But the thing is, before these
repeaters give up the ghost, they will usually start running slower, and with accurate timing on either side, you could actually figure out that the signal is taking
longer than expected and figure out which repeater
is beginning to fail. From here, you could reduce the amount of data going through it to
extend the repeater's life and schedule repairs. Even more mind-boggling, the undersea cables can be used to detect gravitational waves. You might remember our video at the laser interferometer
gravitational wave observatory or LIGO where they use lasers to super accurately measure changes in the physical size of the earth due to black holes colliding or something. Well, LIGO is actually currently working with the time appliance project to get the timing between
their three locations to within a single clock
cycle of their processors. But by accurately
measuring the time it takes for light to cross the ocean, you have suddenly turned the whole world into a gravitational wave detector instead of just a
four-kilometer stretch of desert in Washington state. Accurate timing also has huge
implications for security. Like if you know that it
always takes 10 milliseconds for a message to be sent
between two computers, if there's some deviation, like if someone tried to inject something or sniff the packets, you can just ignore the data that didn't arrive when
you expected it to. And finally, PTP could have a huge impact on streaming and live content. Currently there's no real way to verify the integrity of a stream. You're basically just pushing out data and counting on user complaints to tell you that something
is wrong with it. With tighter clocks, it should be possible to have
much higher image quality with fewer chances of corruption
occurring along the way. Although with these examples, we are only scratching the
surface of what can be done here. The best part of all of this is that there are probably loads of ways that this tech will be used that no one has thought of yet. And since again, the whole
project is open source, anyone can implement it and
change it however they want. There really isn't much in the way of this gaining widespread support. Like I said before, the tech is already built
into a lot of computers and is already being
used by regular people for things like 5G and GPS. So make sure to hit, like, if you enjoy this and spread the word. Also we're considering
implementing this in our office to see if we get some kind of
network performance benefit. So make sure you're subscribed so you don't miss that. Are we really going to do that? - [Alex] Maybe, I'm not sure either. - What I am sure about is our sponsor. Thanks to Squarespace for
sponsoring this video. If you need a website and
don't know how to make it, Squarespace makes it easy. There's a wide selection
of award-winning templates and all of them are optimized for mobile, so your website will
look great on any device. You can create members only content for extra revenue, using
Squarespace's members area. You can grow and engage with your audience with the powerful and easy
to use email campaign system. And if you ever need additional help, Squarespace offers webinars,
a full series of help guides, or you can contact their
24/7 customer support via live chat and email. So don't wait. Get started today by going
to squarespace.com/ltt where you can get 10%
off your first purchase. If you enjoyed this and you're looking for more science-y videos from us, check out our tour of LIGO, the engineering that
goes into the detection of gravitational waves
is truly mind bending.
It's useful for a few things, but I doubt a bunch of the suggestions:
Seems like the company making those things hired a bunch of hardware influencers to market their product or for facebook to show how technically advanced they are or something.
In the last few weeks there have been in depth explanations on the hardware on tweakers.net, anandtech (and Ian Cutress'es personal channel techtechpotato) and now Linus.
I actually know the guy who made these cards. TBH, the use case is a bit narrow. You don't need one in every PC, you only really need one in a single PC that acts as the "grand master" clock for the whole network (or at least per datacenter). The card is simply a high precision time source, called a GPS-disciplined rubidium oscillator (basically an extremely stable oscillator that is "tweaked" to align with GPS time. If the GPS signal is lost, then it free-runs, but the rubidium oscillator means it drifts very slowly). The NIC in the same machine is then responsible for essentially sharing that source of time with the rest of the network.
I really hope the drive sized version of it comes to fruition that they mentioned. Would be pretty cool for this to be more accessible cost wise.
I'm not sure if these work the same way but here's some other cool time cards: https://www.masterclock.com/products/pc-cards
There's another highly important application for these rubidium oscillators, which is in PLLs (phase-locked loops), which can multiply/divide frequencies by arbitrary ratios. It's very hard to generate high frequencies (GHz) precisely, so we typically use a low-frequency (MHz) oscillator and upscale the frequency to our desired GHz range, while maintaining the stability of the oscillator.
PLLs act as a low-pass filter for phase noise, so they can fix any high-frequency "irregularities" in an oscillator's timing. However, this is limited by the PLL loop bandwidth: below that frequency, the PLL can't do anything to improve the timing. The higher the loop bandwidth, the faster the PLL can lock onto a new frequency when a change is desired (frequency agility). However, the trade-off is that the oscillator's low-frequency timing imperfections are less attenuated by the PLL.
Here enter high-stability oscillators (such as rubidium atomic clocks). By having extremely precise timing, they exhibit very little low-frequency phase noise, and whatever happens at high frequencies is attenuated by the PLL. Thus, the overall jitter of the clock remains low. Furthermore, these oscillators are very stable against temperature changes, maintaining their frequency fixed across high temperature variations (it can be a slow as a few parts per billion change every degree)!
Now why would we care about this? Well, in high-frequency communications (several dozen GHz clocks), the time to send each bit is so small that any imperfection (amplitude or phase noise) can easily make the difference between detecting the correct bit precisely or not. This isn't really a thing for consumers yet, but in the labs, there are already boards talking to each other at hundreds of Gb/s, clocked by these rubidium oscillators, and we can expect this to become part of commercial products, first in datacenters, then in servers, and perhaps one day the home PC?
I can see the value of this in database design: with this level of timing precision, you could ditch GUIDs/sequential IDs and just go with raw value coming off the atomic clock for your primary key. Makes indexing and querying for time-span-based results easy and efficient.
Linus has a lot of viewers who work in the big iron sphere and thus might factor in the idea of this sort of thing into their next begging proposal to the board.
I can see its potential and at its cost it would be reasonable to deploy them across a DC as its chump change.
For the average user it's as much use as their z series mainframe bit they did with IBM.
Amdahl's Law is dead. Long live Gustafson's Law!