15 April, 2008
For thirty years or more, “Moore’s Law” has seen the number of circuits on a computer chip double every 24 months. The first generations of computer chips had the bare minimum number of circuits needed to function as a computer. Some complex operations required many clock cycles to complete. So the first few generations of chip improvement could be expended creating more complicated specialized circuits until every possible operation had customized circuits. After that, the only way to get more work done without speeding up the clock was to find ways to execute two or three instructions in the same program concurrently. Each subsequent chip design faced a law of diminishing returns, using more transistors to buy successively less performance improvement.
An alternative use for twice as many transistors is to create a second duplicate CPU core. That doubles the amount of work the CPU can do, but only if there are two different computer programs (or at least two "threads" of computer logic) that can execute at the same time. When there is only one thing to do, one core does it and the other remains idle. Extra cores can be used immediately by Server computers. A big Web Server is connected to thousands of remote users, and at any time dozens of users may have submitted a request and be waiting for a reply. Each core can be assigned to handle one independent user request.
Desktop computers used by a single person are less likely to keep multiple cores busy. A few programs, mostly video encoding/decoding and some games, are written to use multiple independent threads of execution. Unless you use such programs regularly, a second core will be occasionally useful to smooth out performance and any additional cores will be of very little use. Of course, since CPU vendors have found it useful over the last two generations of chips to go to Dual Core and now some Quad Core processors, the most CPU intensive programs may be rewritten or adapted to make better use of this type of hardware.
In the short run, Dual Core should be good enough for most people and Quad Core is just for bragging rights. As more software is rewritten, there is no particular reason to stop at 4. Remember, the industry spent around four generations on the bad side of the "diminishing returns" using progressively more transistors to make a single thread run very slightly faster. Intel has been experimenting with reversing those steps. The low power Atom processor designed for cell phones began as one unit of an experimental massively multicore chip. Using today's technology, but stepping back past the Pentium 4, Pentium III, and Pentium II generations back to the original Pentium design, you can build a CPU chip with as many as 80 cores. If there was any software that knew how to use such a chip, it could get a lot more work done than a current Quad Core processor. However, this will not happen in the next three years.
Returning to today's reality, go to a site like Newegg and list current generation Intel or AMD processors. Now the actual numbers will change almost as soon as I type them in, but running the experiment on April 12, 2008 shows the Intel Celeron 1.6 GHz single core for $43, a Celeron 1.6 GHz dual core for $60, and a Celeron 2.0 GHz single core for $62. The extra $19 is small change considering the cost of an entire system, but the principle remains the same. For that $19 you can either go from 1.6 GHz to 2.0 GHz (a 25% increase in speed) or you can go to two 1.6 GHz cores (a 100% increase, but only for programs that can use both core at once; for all the other programs it is a 0% improvement). If 25% of your most important programs can use dual core, then the two choices are equal. Which is best depends on your guess about how many programs have been or will be rewritten to use multicore technology.
We could continue the experiment with the numbers for Dual and Quad core, but pricing does not always make sense. The Dual Core 2.4 GHz processor costs $230 and the next higher price processor is Quad Core Q6600 2.4 GHz at $244, then a Dual Core 3.0 GHz at $270. So at 2.4 GHz going from Dual to Quad costs so little that the only reason not to make the upgrade is the extra electricity it will consume during its life. [A lot of people buy the Q6600 and run it at 3GHz, but this is an article on Dual-Quad, not overclocking].
The jump from single to dual core is probably valuable. The jump from dual to quad is trivial in terms of chip cost, but it will add to your electric bill (and global warming) and probably won't be useful very often.