Coding Horror

programming and human factors

Moore's Law in Practical Terms

There are two popular formulations of Moore's Law:

The most popular formulation [of Moore's Law] is the doubling of the number of transistors on integrated circuits every 18 months. At the end of the 1970s, Moore's Law became known as the limit for the number of transistors on the most complex chips. However, it is also common to cite Moore's Law to refer to the rapidly continuing advance in computing power per unit cost, because transistor count is also a rough measure of computer processing power.

The number of transistors on a CPU hasn't actually been doubling every 18 months; it's been doubling every 24 months. Here's a graph of the transistor count of each major Intel x86 chip family release from 1971 to 2006:

Intel x86 transistor counts, 1971-2006

The dotted line is the predicted transistor count if you doubled the 2,300 transistors from the Intel 4004 chip every two years since 1971.

That's why I prefer the second, looser definition of Moore's law: dramatic increases in computing power per unit cost. If you're a stickler for detail, there's an extensive investigation of Moore's law at Ars Technica you can refer to.

But how do we correlate Moore's Law-- the inexorable upward spiral of raw transistor counts-- with performance in practical terms? Personally, I like to look at benchmarks that use "typical" PC applications, such as SysMark 2004. According to page 14 of this PDF, SysMark 2004 scores are calibrated to a reference system: a Pentium 4 2.0 GHz. The reference system scores 100. Thus, a system which scores 200 in SysMark 2004 will be twice as fast as the reference system.

So, what was the first new CPU to double the performance of the SysMark 2004 reference system with a perfect 200? The Pentium 4 "Extreme Edition" 3.2 GHz scores 197 on the SysMark 2004 office benchmark in this set of Tom's Hardware benchmarks. Let's compare the release dates of these two CPUs:

Pentium 4 2.0 GHzAugust 27th, 2001
Pentium 4EE 3.2 GHzNovember 3rd, 2003

It took 26 months to double real world performance in SysMark 2004. That tracks almost exactly with the doubling of transistor counts every 24 months.

This isn't a perfect comparison, since other parts of the PC get faster at different rates. But it's certainly a good indication that CPU transistor count is fairly reliable indicator of overall performance.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorror