March 22, 2010 3:16 PM
Moore's Law is not dead. It's just meaningless
Moore’s Law is actually about the fairly dry observation that the density of transistors on computer chips has roughly doubled every two years since the invention of the integrated circuit in the late 1950’s.
It is the most famous exponential growth factor in tech history and has come to define the history of what computers are expected to do even if the man himself confessed in 2005 that he was no longer convinced that his law applied any longer.
The problem with the Law is not whether it is still true - I’d argue there are signs it is kicking back into life after a decade's lull in fact - but that it is still taken to define the accessible power of devices in some linear way, i.e that more transistors equals more usable processing power. It doesn’t, and wasn't intended to, though you won’t find the company Moore co-founded, Intel, admitting as much.
Consider this. The Pentium III of 1999 had 10 million transistors, the Pentium 4 of 2002 had 42 million, and by 2006 the first Core 2 Duos had just under 300 million. Today’s 4-core Core i7s pack around 800 million, and projections for chips due this year and next start to get a bit dizzying. The 8-core Xeons based on the Nehalem architecture should reach 2.3 billion transistors, which is not surprising because they keep addng more and more identical cores.
That growth sounds pretty Mooreish to me, but does it mean anything in practical terms?
Processor grunt is great if you run a supercomputer modelling weather because you can build a much more powerful one for less every year. If you make 3D graphics or run thread-optimised software compilers or deal with video processing, you’ll probably also like it for much the same reason. It saves time.
For everyone else, the notion that adding more and more cores (and therefore more transistors) to a desktop PC or laptop is just a marketing wheeze justified by ever more outlandish use cases, usually ‘gaming’, a mysterious world where everyone visits elaborate 3D worlds at high resolutions.
From what I can tell - and it is not easy short of becoming a microprocessor engineer to discern even this much - a major determinant on the part of system performance governed by CPUs is on-chip cache size and clock frequency. But cache is expensive and clock speed introduces electrical and thermal problems, which is probably why my six-year old Pentium 4 system runs at the same tick as my Quad-Core. In the vast majority of use cases, allowing for the improvements in other parts of the system, the extra three cores is pretty hard to see.
So, then, let’s reformulate the great man’s Law slightly. For every doubling in transistors, which possibly happens every two years but frankly who cares anyway, the extent to which that can be turned into usable computing work halves. Or, put another way, the computing resources we will have in two years are actually about the same as the real-world computing resources we think we can access now.
We review Intel’s latest 6-core chips here. Notice the reviewer ran the chips against the everyday task of AES encryption, special instructions for which come built into the new chips. Interestingly, another innovation is the ability for the chip to shut down unused cores, which means we’ve come full circle. More cores is more performance, unless you’d be better shutting them off, in which case, fewer cores equals more efficiency.
Before pining for one, I’d have a squint at Gene Amdahl’s Law. It’s a lot trickier to remember but it might actually tell us more about the relationship between transistors and benefits when running the operating systems of today with applications everyone has heard of.