The Ultimate Limit of Moore's Law
BuzzSkyline writes "Physicists have found that there is an ultimate limit to the speed of calculations, regardless of any improvements in technology. According to the researchers who found the computation limit, the bound 'poses an absolute law of nature, just like the speed of light.' While many experts expect technological limits to kick in eventually, engineers always seem to find ways around such roadblocks. If the physicists are right, though, no technology could ever beat the ultimate limit they've calculated — which is about 10^16 times faster than today's fastest machines. At the current Moore's Law pace, computational speeds will hit the wall in 75 to 80 years. A paper describing the analysis, which relies on thermodynamics, quantum mechanics, and information theory, appeared in a recent issue of Physical Review Letters (abstract here)."
Intel co-founder Gordon Moore predicted 40 years ago that manufacturers could double computing speed every two years or so
by cramming ever-tinier transistors on a chip.
That's not exactly correct. Moore's Law (or observation more like) reads in the original article as:
The complexity for minimum component costs has increased at a rate of roughly a factor of two per year ... Certainly over the short term this rate can be expected to continue, if not to increase. Over the longer term, the rate of increase is a bit more uncertain, although there is no reason to believe it will not remain nearly constant for at least 10 years. That means by 1975, the number of components per integrated circuit for minimum cost will be 65,000. I believe that such a large circuit can be built on a single wafer.
All he's concerned about is quoting how many components can fit on a single integrated circuit. One can see this propagated to processing speed, memory capacity, sensors and even the number and size of pixels in digital cameras but his observation itself is about the size of transistors -- not speed.
The title should be "The Ultimate Limit of Computing Speed" not Moore's Law.
Furthermore, we've always had Planck Time as a lower bound on the time of one operation with our smallest measurement of time so far being 10^26 Planck Times. So essentially they've bumped that lower bound up and it's highly likely more discoveries will bump that even further up. I guess our kids and grandchildren have their work cut out for them.
My work here is dung.
I plan on setting up server farms in parallel dimensions
If you mod me down the terrorists will have won
So we'll have to wait another 75 years before management lets us focus on application efficiency instead of throwing hardware at the performance problems? Sigh...
Developers: We can use your help.
This isn't like the speed of light, it is quite possibly the reason for it.
Please consider this account deleted, I just can't be bothered with the spam anymore.
Eh, let's let the singularity first, then we'll let the robots take care of the problem.
A scientist and an engineer are lead into a room. They are asked to stand on one side. On the opposite side is Treasure (or delicious cake if you please).
They are told that they may have the prize if they can reach it, however they may never go more than half the distance between them and it.
The scientist balks claiming it is obviously impossible as he can NEVER reach the prize and leaves the room. The engineer shrugs, and walks halfway to the prize 10 times or so, says "close enough" and takes it.
So I guess we'll just see, eh?
Never trust an atom. They make up everything.
Parallel computing won't help.
There's a limit to how fast your compute subsystems can exchange data as well.
A more practical question: how many bits does my encryption key need now to make brute force cracking impractical for the fastest computer possible in this Universe (i.e probability of finding the key within my remaining lifespan 0.0001% (1 in a million))?
And not involving a system that reduces my lifespan, such as one failed attempt kills me, smart-ass.
Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
Then it's finally time for One Dimension Per Child.
Then it's finally time for One Dimension Per Child.
I do hope you mean one _extra_ dimension per child.
From Wikipedia: "a computer the size of the entire Earth, operating at the Bremermann's limit could perform approximately 10^75 mathematical computations per second. If we assume that a cryptographic key can be tested with only one operation, then a typical 128 bit key could be cracked in 10^37 seconds. However, a 256 bit key (which is already in use in some systems) would take about a minute to crack. Using a 512 bit key would increase the cracking time to 10^71 years, but only halve the speed of encryption."
You see - the system that threatens to reduce your lifespan is a much faster way to acquire that key.
So the solution is very obvious. Just put the entire computer in subspace field that creates a pocket of reality where the speed of light is faster (many times faster). Course you then have to have some mechanism for speeding up and slowing down data coming in the ODN conduits. It's been commonly done since the early 24th century. All of these pesky "limits" can be worked around with some fancy level-three diagnostics.
looks like we've almost reached that point now. We've had Xeon 3.0GHz cpus for over 5 years now, and they're still coming out with brand new 3ghz processors. That's a long time to not see a jump in speed, what happened to "doubling every 18 months"? We should be around 24ghz by now.
Sorry, Performance != Clockspeed
I, for one, am glad Intel went away from modeling their processors after their clockspeed. They went to an actual model for this reason. If you want an example where they didn't, and lower clock speed processors kept up just go back and look at the 423/427 Pentium 4's vs the Socket A Athlons (XP, ect)
looks like we've almost reached that point now. We've had Xeon 3.0GHz cpus for over 5 years now, and they're still coming out with brand new 3ghz processors. That's a long time to not see a jump in speed, what happened to "doubling every 18 months"? We should be around 24ghz by now.
Performance != MHz.
Those 3GHz Pentium 4 Xeons suck balls compared to even a Core 2, forget about an i7.
The only way the P4 got to what were at the time extremely high frequencies was by having a craptastic architecture. It was driven by marketing, which when the P4 was released was all about MHz. People thought MHz == Performance, so they cranked up the MHz for minimal gain in performance. AMD tried like hell to convince people otherwise, but fat lot of good it seemed to do. And now Intel is suffering for their previous emphasis on MHz over all.
The enemies of Democracy are
Nitpick: that's 10^(-37) seconds, or ~2M Planck times.
In other words, quoting a fortune cookie:
Progress means replacing a theory that's wrong by a theory that's more subtly wrong.
Instead of going faster, cores became more optimized and doubled, quadrupled, and octocores are around the corner if not here already. However, the "Turbo" mode in the i5/i7 shows that cranking up the clock frequency still helps for single/low threaded applications.
For any given architecture, yes, higher clock speed will mean more performance. That's a given. But that doesn't mean it's worth chasing after by modifying the architecture, which is why there's been a "ceiling" on frequency in favor of more efficient architectures and yes Multi-core Mania.
So, why don't we have 8, 16, or 24 GHz clock frequencies? Is this only because of limitations (memory) bus speeds or is this because of silicon heat dissipation problems?
Not so much memory speeds, since memory bandwidth/latency can be a bottleneck for any high-performance design whether it goes the "speed demon" or "brainiac" route.
As you surmise, power is important. Dynamic power is proportional to clock frequency, and having to add extra flip-flops to store intermediate values in a long pipeline only exacerbates the issue. Those flops also burn static power, which has become a significant portion of the overall chip power budget (part of what doomed the P4 architecture). Power budgets are also much more constrained, and the manufacturers are trying to target fixed power budgets for different market segments. This means extra power burned may actually hurt your clock frequency, partially negating the gains of a high-frequency design. With performance-per-watt becoming a major metric for customers, and yes heat dissipation also being an issue, it doesn't make a lot of sense to chase high performance by also burning lots of power as high frequency designs naturally do.
So with that in mind, the "speed demon" vs "brainiac" debate leans towards the brainiac side. Though the number of gates per pipe stage is already pretty low. Getting it down further means substantially hurting IPC, without necessarily gaining tons of frequency. Branch mispredicts still happen. Having slightly more gates per stage, doing a better job of predicting branches or shuffling data around, having larger caches and TLBs, smarter schedulers, ends up being a better idea.
But as you say, frequency still matters. So I'd look to future chips trying to eek out as much frequency as possible within a given power envelope, not just by looking at the number of active threads/cores, but also by looking at the actual dynamic power situation and adjusting frequency accordingly. TDP values are worst-case scenarios for OEMs to design cooling solutions around. When the actual power usage is less than the worst case, when you have e.g. an integer-only app where the floating point units are unused, you can afford to crank up the frequency some and get extra performance.
It's all about being smart with your power budget these days. That's why 24GHz processors don't make any sense. Intel had very convincing data showing they could scale the P4 up that high and get good performance, but if you've seen the cooling solutions for the P4 Prescott, then you know why that ended up being a dead end.
The enemies of Democracy are
I'm just waiting for a peta-hertz computer with a 500 exabyte hard-drive able to do universe simulations in real time that will fit in my pocket
It is impossible to simulate the universe. This is pretty easy to prove. If it was possible, using some device, to simulate the universe, then it is not actually necessary to simulate the universe -- we only need simulate the device which simulates the universe, since the device is necessarily contained within the universe. This should be easier, because the device itself is much smaller than the entire universe.
But if simulating the device which simulates the universe, is equivalent to simulating the universe, then that would mean that the complete set of states which define the universe can actually be represented by some subset of those very same states -- the subset of states which describe the device which is being used to simulate the universe. In other words, the universe is a set such that if you remove some subset of states you end up with the same set again. I hope you can see how this is a logical impossibility.
Lay off the bong hits.
Pointing out that someone was off by 74 orders of magnitude isn't a nitpick :-P
Information theory is life. The rest is just the KL divergence.