Tuesday, June 10, 2008
To Quad or Not to Quad, That is The Question
Posted by Jason Dunn in "Digital Home Talk" @ 07:00 AM
Time after time, I'll see a program stuck at using one core, which is frustrating because I know if that program was using the second core it would complete its task much faster. When I built my monster media machine last year, I used the most powerful CPU Intel had at the time: the Intel Core 2 Extreme X6800. This dual-core beast of a CPU runs at 2.93 Ghz and has 4 MB of L2 cache. It chewed through everything I threw at it. Technology never stops marching, however, so only a few months after publishing that article, Intel's quad-core CPUs were taking centre stage.
A few months ago I thought it would be interesting to answer the question many geeks are probably asking themselves: is it worth it to move from a dual-core CPU to a quad-core CPU? Many of the motherboards from 2007 are compatible with the Intel quad-core CPUs, but when does it make sense to replace your Intel dual-core CPU with a quad-core CPU? This article aims to answer that question. I requested an Intel Core 2 Quad QX6700 from Intel Canada to compare an Extreme CPU to an Extreme CPU, but they didn't have one for me to test, so I was sent an Intel Core 2 Quad Q6600 instead. The Q6600 is just over 500 mhz slower than the X6800 I was using, but it has two more cores and double the L2 cache. How would it measure up? Let's dig in.
Benchmark, Benchmark, Then Benchmark Some More
There's only one way to approach an article like this: lots of testing. So, in that light, I started with one of the most CPU-intensive tasks you can ask of a system: transcoding a DVD. With the Intel Core 2 Extreme X6800 CPU installed, I took one of my two copies of Lord of the Rings (I keep one just for testing) and ripped chapter eight to a 720 x 480 Divx, 2025 kbps file (set to 2 pass encoding, deinterlacing) using CloneDVD Mobile [affiliate]. It took 1 minute and 39 seconds to finish. At peak CPU usage, it was using 68% of the CPU. Next I tried the same encoding task, this time selecting an iPod Touch preset, which is a 480 x 270 h.264 759 kbps file. Two pass encoding was selected, and it took 2 minutes 22 seconds to complete the task - with the CPU peaking at 98% usage.
Next I performed a test using ProShow Gold 3.2. ProShow is a photo slideshow application that creates extremely high-quality video output, and it's also well-known for its ability to scale to multiple cores. I took a batch of 30 photos and output them to a 1080p video file (1920 x 1200 resolution) with high-quality encoding. The processing took 9 minutes 58 seconds, and ProShow reported it was running at 0.3x realtime speed.
Swapping the quad-core CPU into place was a quick affair, and once I got it installed I repeated the same benchmarks as above. The DVD ripping test took the same length of time: 1 minute 39 seconds. The CPU usage peaked at 45%, meaning that most of two cores were being used, but the other two cores were completely un-touched. The added cache of the quad-core CPU had no impact on the speed of the transcoding.
The h.264 DVD test showed improvement with four cores: the transcode was finished in 1 minute 42 seconds, which is an 18% improvement in speed. The encoding peaked at 85% overall CPU usage, meaning CloneDVD Mobile when encoding to h.264 is able to utilize all four cores, something it's unable to do when encoding to Divx.
Next I tried the ProShow Gold 3.2 test, and this test really showed the power of four cores: the 1080p encoding process was finished in 6 minutes 13 seconds (0.48x realtime) which is an impressive 38% faster. My tests were purposefully small, but you can easily see the significant time savings can be had when working with larger projects (ripping the entire DVD, encoding 300 photos to 1080p, etc.). The big caveat is that the software application has to support multiple cores - and as we saw with the CloneDVD Mobile test, it sometimes comes down to the video codec itself.