The rantings of a beautiful mind

On life, society, and computer technology.

My Photo
Location: Toronto, Ontario, Canada

I live in the Fortress of Solitude. I drive the Silver Beast. My obsession is justice. I used to be a Windows software developer. I retired in 2000 when my stock options helped me achieve financial security.

Saturday, March 03, 2007

Do We Really Need Quad Core?

If you ask whether or not we need quad-core CPUs, you may as well ask whether or not we will ever need faster processors. You may as well have asked, back when the Pentium was introduced, whether it wasn't just enough to make faster 486s. That's the equivalent of what we're talking about here. Integrated floating-point units, wider pipelines, MMX, SSE…multiple cores. These are the innovations that will increase CPU power. Sure, each core within a multicore CPU will continue to be tweaked (the Core 2's 128-bit wide SSE execution per core is a good example), but those things only get you so far, and they're very time-consuming and expensive in engineering terms.

But the apps aren't there yet, right? Quad-core could come late next year, you say. No, the apps are there. Ever encode video? All the video encoders are heavily multithreaded, and video encoding is extremely parallelizable: You get huge speedups. Oh, but the average user doesn't encode video…only they do. iDVD is an extremely popular Mac app (Intel fuels Apple's machines now, remember?) and next year, literally tens of millions of new Vista owners will have bundled DVD creation software, too. All that MPEG2 encoding can take a long time. Many portable devices require video to be in a particular format or resolution, so the re-encoding of all that stuff is another big time sink. When it comes to HD-DVD and Blu-ray, even the decoding can suck the life out of a high-end CPU.

Then there's general multitasking. You might think that grandma only runs her web browser and email client, or that your laptop is only for a couple of office and web apps, and maybe listening to some music on the road. Each of these only requires a fraction of modern CPU power, so you don't really need multiple CPUs to handle the load, right? Well, that would be true if that were really all your computer were doing. Operating systems like OS X and Vista index drive contents in the background and run other diagnostic services that attempt to keep your system running smoothly and make those searches pop up in an instant. There's a whole flood of stuff going on—again, none of it particularly CPU-intensive by itself. But add 'em all together with all the little lightweight apps you're running, toss in the constant snooping of virus protection software and maybe a little encryption for your sensitive data (business contacts, company plans, "family videos," whatever) and you're talking about a whole lot of multitasking.

Multitasking is more than just what you see on your taskbar, after all.

So is now the right time for quad-core CPUs? Hell, yes it is. It was the right time for quad-core months ago. It's the right time for six or eight-core CPUs. You could give me 16 cores and I would ask where the 20-core chips are. More cores are faster, and faster is better, because it enables richer, easier-to-use, more fun software. Bring on the many-core CPUs, heavily multitasking OS environments, and multithreaded software. I'm ready for the parallel processing universe.



Post a Comment

<< Home