Although the smart money is on sticking with 2 cores for the time being, I went out and bought myself a new quad-core Q6600-based system today, with 4GB of RAM and a nice graphics card. Vista64 installed without a hitch, and now during the downtime while Visual Studio 2005 SP1 installs I decided I’d share my thoughts as to why I bought a quad-core. Although as Jeff points out most people will be better off with the fastest duo-core CPU they can afford, I believe this is largely due to today’s software - it just hasn’t been written to be highly parallelised. As most decent developers will point out, some tasks can be readily parallelised, and some can’t. Those same devs will tell you that word won’t get any faster just because it’s running on 4 cores instead of 2. Maybe not doing the current workload it is doing, but I’d like word, visual studio and a host of other programs I spend sizable chunks of my life working with to forget about saving a few milliseconds of their time here and there and start thinking about my time. What if word was using 2 of those 4 cores to run evolutionary AI in the background trying to figure out what to do when I past some text, rather than me having to tell it what to do.
Surely if a computer can learn this way to beat just about everyone at checkers then surely it can figure out that whenever I paste from internet explorer into word I want to match the destination formatting, or that when I paste from Visual Studio I want to keep the source formatting. If all you care about is running todays software, then by all means stay at duo core, but if you want or need to be building the software of tomorrow then maybe embracing parallelism is the way to go.
You’ll have to excuse me, now that Visual Studio 2005 SP1 has finished installing I need to go and repro some x64 CLR JIT bugs.