views:

952

answers:

4

I have to make a recommendation to management regarding whether or not we should spend the extra money to purchase new computers with Intel i7 CPUs (i7 950s) or whether we should buy Intel Core 2 Quad processors (Q9550s or something equivalent.)

Our main task are Microsoft Visual C++ development, thus we are aiming to ensure the best compile and link times for our money.

The i7 systems are $600 more each than the Intel Core 2 Quad systems. The GHz of the CPUs is basically equivalent.

Is that extra money justified in terms of additional compilation/link performance?

A: 

Compiles that would use all cores are probably disk bound anyway. Go for the Core 2 Quad and you'll be happy for years to come.

added from comments:

If you have $600 to spare, get a nice SSD for the code OR the libraries, you'll get a very decent compile time speed increase from that.

gbrandt
So you are suggested that we put the money into a good Intel or OCZ SSD drive (which I understand are equivalent on the high end in terms of performance)? Not a bad idea actually. I understand that these top end SSD drives cost about $500 each anyhow.
mindless_developer_man
You'll probably see a bigger boost with an SSD rather than Core i7 vs Core 2.
Michael
yes, you would see a better boost in speed using an SSD.
gbrandt
I should add that I tried an SSD. It didn't really speed up our compiles that much. I then purchased an i7 920 and it cut our compile times in half. Thus it was better to purchase an i7 920 -- it blew me away how fast it was. I think the speed up was partially due to the fact that it uses DDR3 and triple channel memory.
mindless_developer_man
I/O bound?! No way! There is a LOT of processing behind a compilation. I have an i7 and I compile 10 files at the same time, and my CPU is constantly at 100%. This must mean that my disk is not.
Andreas Bonini
If a SSD speeds up the development a lot it just means you are low on RAM for the file cache. I would say that an SSD does not add more then 10% during compilation (well other then the first one).
Lothar
A: 

While my answer is definitely to late for you maybe someone else is reading it. If you develop multithreaded software then always go for the highest number of cores.

It's not really for your day to day work but the more cores the better you can test scalability and the more likely is it to run into race conditions and deadlocks on your developer machine.

I would better buy 2xi7 with 8+8 thread and 2GHz then a 3,2GHz quad core - both cost the same.

Lothar
+1  A: 

We tested i7 systems where I work, and had major stability problems on all of them.

Core 2 Quad will give you the biggest bang for the buck, but going with dual quad core Xeons will give you the biggest bang.

Any way you go, stick as much RAM in the machines as you can, and setup a fast RAID 1 array in the machine with high quality drives, both for a bit higher speed and data integrity. Normal drives are fine, SSD drives are still spotty in terms of performance; a lot of the good deals you see on SSDs are for drives that are slower than standard magnetic HDDs.

Drakonite
"Stability"? Can you elaborate?
Andreas Bonini
Stability problems as in random application or system crashes, consistent with the TLB bug that Intel is both denying and releasing workarounds for. As far as I'm aware, the manufacturer of the motherboards we used for testing the i7 still have not released a new BIOS update with Intel's supposed workaround.
Drakonite
+2  A: 

I'm going to go for the trite answer and just say "Yes!!!!!"

Pretty sure this is too late for the OP, but for anyone else reading this... don't think that that $600 will be wasted (and it should be getting smaller as time goes by as well), the core i7 will own the Core 2 Quad. I've had both and have seen my compile times drop from about 27 min to 11 min.

Core i7 all the way!

Jamie Cook
This should be marked as answer instead of the "I think...probably" answer that is not based on personal experience.
Marek