Return to site

Is Dual Core Enough For Programming

broken image


Dual Core: Extremely power-efficient processor which has a maximum TDP of an astoundingly low 15 watts. Core 2 Duo: Power efficient enough, but the 65 watts of maximum TDP are nowhere as low as the dual core. Winner: Dual core for its efficient use of power. Dual Core: Acceptable enough clock speeds of about 2.33 GHz for the best. Yes, it's a 15W i5 dual-core CPU, but it does the job quite nicely. Level 1 1 point 2 years ago At the last four software companies i've worked at the standard issue machine for developers has been the mid-tier 15' MBP (typically the basic discrete gfx model).

I'm a big fan of dual-core systems. I think there's a clear and substantial benefit for all computer users when there are two CPUs waiting to service requests, instead of just one. If nothing else, it lets you gracefully terminate an application that has gone haywire, consuming all available CPU time. It's like having a backup CPU in reserve, waiting to jump in and assist as necessary. But for most software, you hit a point of diminishing returns very rapidly after two cores. In Quad-Core Desktops and Diminishing Returns, I questioned how effectively today's software can really use even four CPU cores, much less the inevitable eight and sixteen CPU cores we'll see a few years from now.

To get a sense of what kind of performance improvement we can expect going from 2 to 4 CPU cores, let's focus on the Core 2 Duo E6600 and Core 2 Quad Q6600 processors. These 2.4 GHz CPUs are identical in every respect, except for the number of cores they bring to the table. In a recent review, Scott Wasson at the always-thorough Tech Report presented a slew of benchmarks that included both of these processors. Here's a quick visual summary of how much you can expect performance to improve when upgrading from 2 to 4 CPU cores:

Is Dual Core Enough For Programming Language

Task Manager CPU Graphimprovement
2 to 4 cores
The Elder Scrolls IV: Oblivionnone
Rainbow 6: Vegasnone
Supreme Commandernone
Valve Source engine particle simulation1.8 x
Valve VRAD map compilation1.9 x
3DMark06: Return to Proxyconnone
3DMark06: Firefly Forestnone
3DMark06: Canyon Flightnone
3DMark06: Deep Freezenone
3DMark06: CPU test 11.7 x
3DMark06: CPU test 21.6 x
The Panorama Factory1.6 x
picCOLOR1.4 x
Windows Media Encoder x641.6 x
Lame MTMP3 encodernone
Cinebench1.7 x
POV-Ray2.0 x
Myrimatch1.8 x
STARS Euler3D1.5 x
SiSoft Sandra Mandelbrot2.0 x

The results seem encouraging, until you take a look at the applications that benefit from quad-core-- the ones that aren't purely synthetic benchmarks are rendering,encoding, or scientific applications. It's the same old story. Beyond encoding and rendering tasks which are naturally amenable to parallelization, the task manager CPU graphs tell the sad tale of software that simply isn't written to exploit more than two CPUs.

Unfortunately, CPU parallelism is inevitable. Clock speed can't increase forever; thephysics don't work. Mindlessly ramping clock speed to 10 GHz isn't an option. CPU vendors are forced to deliver more CPU cores running at nearly the same clock speed, or at very small speed bumps. Increasing the number of CPU cores on a die should defeat raw clock speed increases, at least intheory. In the short term, we have to choose between faster dual-core systems, orslower quad-core systems. Today, a quad-core 2.4 GHz CPU costs about the same as a dual-core 3.0 GHz CPU. But which one will provide superior performance? A recent Xbit Labs review performed exactly this comparison:

Is Dual Core Enough For Programming Languages

Skills
3.0 GHz
Dual Core
2.4 GHz
Quad Core
improvement
2 to 4 cores
PCMark05 90918853-3%
SysMark 2007, E-Learning167140-16%
SysMark 2007, Video Creation13115115%
SysMark 2007, Productivity152138-9%
SysMark 2007, 3D160148-8%
Quake 4136117-15%
F.E.A.R.123110-10%
Company of Heroes173161-7%
Lost Planet6254-12%
Lost Planet 'Concurrent Operations'628130%
DivX 6.665640%
Xvid 1.243455%
H.264 QuickTime Pro 7.21891880%
iTunes 7.3 MP3 encoding110131-16%
3ds Max 9 SP24.956.6133%
Cinebench 105861874449%
Excel 200739.924.463%
WinRAR 3.71881805%
Photoshop CS37073-4%
Microsoft Movie Maker 6.07380-9%

It's mostly what I would expect-- only rendering and encoding tasks exploitparallelism enough to overcome the 25% speed deficit between the dual and quad coreCPUs. Outside of that specific niche, performance will actually sufferfor most general purpose software if you choose a slower quad-core over a fasterdual-core.

Is Dual Core Enough For Programming Module

Core
3.0 GHz
Dual Core
2.4 GHz
Quad Core
improvement
2 to 4 cores
PCMark05 90918853-3%
SysMark 2007, E-Learning167140-16%
SysMark 2007, Video Creation13115115%
SysMark 2007, Productivity152138-9%
SysMark 2007, 3D160148-8%
Quake 4136117-15%
F.E.A.R.123110-10%
Company of Heroes173161-7%
Lost Planet6254-12%
Lost Planet 'Concurrent Operations'628130%
DivX 6.665640%
Xvid 1.243455%
H.264 QuickTime Pro 7.21891880%
iTunes 7.3 MP3 encoding110131-16%
3ds Max 9 SP24.956.6133%
Cinebench 105861874449%
Excel 200739.924.463%
WinRAR 3.71881805%
Photoshop CS37073-4%
Microsoft Movie Maker 6.07380-9%

It's mostly what I would expect-- only rendering and encoding tasks exploitparallelism enough to overcome the 25% speed deficit between the dual and quad coreCPUs. Outside of that specific niche, performance will actually sufferfor most general purpose software if you choose a slower quad-core over a fasterdual-core.

Is Dual Core Enough For Programming Module

Is Dual Core Enough For Programming Skills

However, there were some surprises in here, such as Excel 2007, and the Lost Planet'concurrent operations' setting. It's possible software engineering will eventuallyadvance to the point that clock speed matters less than parallelism. Or eventuallyit might be irrelevant, if we don't get to make the choice between faster clockspeeds and more CPU cores. Adobe untuk edit video. But in the meantime, clock speed wins most of thetime. More CPU cores isn't automatically better. Typicalusers will be better off with the fastest possible dual-core CPU they can afford.





broken image