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.
about the nature of computation and lightspeed and the like as explored in the wonderful novel A Fire Upon The Deep (Zones of Thought)
in which the universe has depth and the depth determines how fast things can go including neural tissue, computation, and intergalactic travel. I have long suspected that Earth is towards the shallow end ...
<script>alert("I never liked JavaScript, really; it just seemed a bad idea.");</script>
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.
and no exponential growth can go on for just a comparatively very short time. This should be self-evident, but for some reason, people seem to ignore that. Especially people who call themselves journalists or economists.
So what is that limit? What units would you express such a limit in? The fundamental unit of information is a bit, what is the fundamental unit of computation? Would you state that rate in "computations per second"? "Computations per second per cm^3"? "computations per second per gram?"
I checked out the pdf of the paper, and didn't see any numerical limit stated, just equations.
Give me Classic Slashdot or give me death!
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.
At the current rate of progress, so to speak, no one will be able to afford a computer that runs 10^16 times faster than current systems. Even as a gamer, I'm already leery of buying any of the newer video cards and CPU setups, after reviewing the cost in electricity needed to run them for a year compared to my existing system - they use somewhere around 4 times the electricity!
I can understand fitting more transistors onto a chipset, and more chipsets onto a system, but even with nanotech and similar technologies, I don't see much chance for each transistor to use proportionally less electricity to allow 10^16 more of them to be running at once. You'd have to run a conductance cable to the sun to get that kind of power.
Ryan Fenton
that the ultimate limit is the processes that the universe itself uses to "compute" its own state? That we can only ever asymptotically approach this limit? Once we hit the limit, our computations cease being simulations and become reality.
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.
As countless of such laments throughout recorded history have shown, worries about intellectual demise of the youth are greatly overblown.
One that hath name thou can not otter
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
1) If you don't approach science as a whole, from the angle of challenging expectations, you're doing it wrong. We don't prove that theories are "right", we fail to disprove them. So if you find the concept of disproving theories to be personally insulting, you have no business in a lab.
2) Given the attitude you've shown in this thread you appear to have the interpersonal skills of a Hymenoepimecis argyraphaga wasp. If you behave so improperly when not behind a computer, I would venture a guess that you are all but un-employable, regardless of how intelligent you feel you are. If you are gainfully employed, I would appreciate it if you could conduct yourself in a professional manor when participating in a public debate.
-Rick
"Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
To be fair, back in the day of the 386 and 486, AMD processors were essentially clones of their Intel counterparts. The only real difference between the AMD and Intel offerings was bus speed, processor speed, and external clock multiplier.
Well at the time AMD was literally a "second source" supplier because back then companies like IBM actually cared about that sort of thing. I don't think AMDvsIntel really mattered a lot, since nobody knew of AMD's existence. Hell, I owned two computers with AMD processors and didn't know it until over a decade later.
When the Pentium was eventually launched, AMD no longer produced a direct clone, and started releasing their processors with 'Performance Rating' (PR) numbers instead of clock speed, effectively claiming that their K5 processors were as efficient as a higher clocked Pentium.
I've heard AMDers call the K5 "the highest IPC x86 part ever", with a wry smirk because just like how MHz isn't everything, neither is IPC, and it never lived up to those Markethertz numbers in terms of real performance.
Funnily enough the Pentium showed the weakness of MHz as a raw metric without taking AMD into account. When the Pentium 60 and 75 were released, there were 486 DX4 100s (okay these were actually made by AMD but like I said who knew or cared?), and the P-75 was a better performer. Granted most of my friends were nerds, but many of them understood this concept back then.
I'd say AMD and the 486 compatible market had as much responsibility for the MHz war as intel.
To be sure, AMD only started talking about overall performance instead of just MHz when it started to hurt them. Forget the 486, in the P3 vs K7 days it was all about clock speed and the race to 1GHz. Sure, the architectures were still fairly similar and thus somewhat comparable by clock speed, but that hardly told the whole story.
It's taken a while for the market to get passed comparisons based on clock speed, and I'm glad to see the performance rating numbers dropped.
They're only semi-dropped. They were still used as relative-frequency indicators relative to Intel's offering from the K7 Palomino through most of the life of K8. Now that the P4 was dropped, and Intel switched to a completely opaque numbering scheme, AMD has switched to a non-comparison-based numbering scheme as well.
MHz is still a valuable comparison tool, but people seem to understand that you can only compare clock speed within a family of processors.
Yeah if you don't count the person I first replied to. :P
The enemies of Democracy are
You'll be able to run Office and watch a flash video in Firefox...
At the same time.
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.