Building a PC, Part V: Upgrading

Profiling an individual application to measure possible system performance improvements when switching to a multicore system is only valid if you only run a single application at a time…

If you run video, web browser, email client, IDE, twitter client, instant messenger and/or skype, p2p client and peerguardian, background backup application, virtual machine, etc… simultaneously then you are likely to see a much bigger overall system performance boost…

Including software development tools.

What if I’m running virtual machines on my development computer? I planning on having a pretty nice virtual machine set up, it’ll be running Perforce, LuntBuild/CC.Net, IIS and maybe MOSS and bugtracking. My cramped studio apparment can’t take another computer, so having all of those in one machine would a significant space saver.

Anyone have any experience with a similar setup on quad core machines?

If you run video, web browser, email client, IDE, twitter client, instant messenger and/or skype, p2p client and peerguardian, background backup application, virtual machine, etc… simultaneously

All of which will be idle 99.9% of the time and easily serviced by a single CPU much less two to sixteen of said CPUs :slight_smile:

To be clear – I am a huge, huge fan of dual core, which I think has massive benefits. Where some people in this thread and I differ is exactly where the point of diminishing returns kicks in. I believe it’s going from two to four for the next 3-5 years.

Well - I see your point, but…

Video idle 99.9% - really? With Javascript and Flash I only wish Firefox was idle 99.9% of the time.

I also tend to use a windows VM on the Mac and am thinking of switching to VMWare Fusion which allows me to dedicate two cores to the hosted OS.

In the browser showdown tests, IE was faster in at least some of the tests , but in none above? What gives?

Heya Jeff,

Good article, and I agree with your stance that generally four cores has diminishing returns over two. However you’ve gone too far with this quote:

“…four cores provide almost no benchmarkable improvement in the type of applications most people use. Including software development tools.”

Herb Sutter has beaten me to the punch and addressed this with a more eloquent post than I could:

http://herbsutter.wordpress.com/2008/04/18/quad-core-a-waste-of-electricity/

For building software, especially large systems, increasing cores gives almost linear improvement in build times.

Sure it won’t help your IDE function better but faster build times are incredibly valuable as a serious software engineer.

Just to clarify - Activity Monitor reports my CPU usage at between 25-65% whilst I’m doing nothing ion particular but watching a video and typing this.

Quicktime vacillates wildly between 14-30%
Parallels similarly (although currently at 60%!)

Azureus (Java P2P), Twhirl (twitter client using Adobe AIR) and Firefox also hum along at a few of percent even when doing nothing.

That’s an interesting position, but I still believe that something akin to JavaScript performance in webmail is far more relevant to mainstream users than encoding high definition video.

Oh for sure – I spend half my day sitting waiting for JavaScript in webmail to complete.

I find it hard to believe that you’re being seriously.

Browser javascript performance sucks - improving it is great.

I’ve just been given the job of speccing some new development machines :smiley: Your post was perfectly timed, forgot about your ealier posts

[Quote]four cores provide almost no benchmarkable improvement in the type of applications most people use. Including software development tools.[quote]

I’m not sure what kind of software development tools you’re using, but compiling in parallel is available for some time, even on MS platform.

Out of curiosity, if you plug the system into your Kill-A-Watt, what’s the overall power consumption at idle and load both before and after the overclocking?

I think the most important thing to keep in mind with the dual-core / quad-core argument is that often, a single application benchmark isn’t going to tell you what you need. For someone like a gamer, who will only need one application performing at peak performance at a time, developers often have a lot of things chipping away at the CPU. Sure, I want VS to run snappy, but I have a SQL server instance in the background as well, and the best way to make Visual Studio happy is to get all that SQL processing off the CPU that VS needs. Likewise for subversion, outlook, any bug tracking server software I have running, IIS, or anything that runs in the background.

You can unbrick hosed bioses quite easily if you’re willing to take a risk. :wink:

Get an identical board, put it in your computer, boot it.

Swap the BIOS chip while the computer’s running.

Flash the hosed BIOS chip.

Shut down.

Return BIOS chips where they belong, taa daa. Unbricked.

I used to fix computers for a living, and not once did I hose anything new by hotswapping BIOSes.

The one thing that scares me about overclocking is you increased the voltage through this processor. So now it’s probably drawing more power and running hotter. You can of course cool it etc. But how will this affect the overall lifetime of the thing? Assuming the manufacturer doesn’t just rebrand the same design over and over again there must be a reason why they choose to clock it at this speed. Aren’t you liable to burn through your processor a lot faster?

I disagree here.

Quad cores may not have any current use, but I know that a lot of software I write uses multiple cores appropriately (ie, a fractal generator doing the maths on one thread and the drawing on another).

It also allows me to run emulators without losing a CPU when that emulated OS is doing a CPU-intensive task.

I’m on a Core 2 Duo at the moment and I would prefer to be on a Core 2 Quad, simply because of the way that my environment is setup. I’ll get better results with four cores than with two cores, because I don’t sit around running JavaScript all day - I actually do something ;).

I’m running my E8400 @ 3.7ghtz without bumping up the vcore using an TR Ultima 90 + Scythe 90mm PWM fan. With slightly better cooling (say a TRUE 120) I could push it over 4.0ghtz by pushing the vcore up. F@H pushes out a SMP in 19 hours.

Over all I love my E8400 almost as much as I love my Q6600 (running @ 3.0ghtz). This ones pushes out a F@H SMP unit in 16 hours.

Jeff, what are your temps like running the new CPU OCed?

Kevin

Actually, gamers now want multiple cores. Think of a game like Supreme Commander where more cores really does make a big difference.

But… the thing I really took away from your benchmarks is how pointless throwing more hardware at a problem is.
Sure you get 19% better performance from the javascript benchmarks. But compare IE7 @ 4Ghz v FF3 @ 3Ghz… FF kicks IE’s flabbly soft bottom! The real point of this is that adding hardware makes no difference compared to writing your software better.

I read about all the new .NET stuff MS has come out with, and people say ‘yes, so what if it needs more memory, memory is cheap’, ‘performance is slightly worse but with today’s computers its not an issue’. Your benchmarks prove that it is an issue, a big one if one app does something in 13 seconds that takes another 3.

So my advice would be: keep your old hardware, spend your money on cold women and hot beers (or something like that), and tell your software suppliers that sloppy, lazy, “horror” coding is not acceptable.

I’m doing nothing in particular but watching a video and typing this

How, exactly, do you “watch a video” and do anything else at the same time? I can barely listen to a podcast while doing anything productive.

We have 2xQuad core PCs at work, despite this, the biggest problems for performance are:

  1. 4Gb is not enough memory by far
  2. Hard disks are really slow (especially if you start swapping)