As we’ve known for a while now, it’s possible to upgrade the processors in the Mac Pro. Now that quad-core Xeon processors are available now, some enterprising Mac user has gone out and upgraded the processors in their stock Mac Pro from two dual-core Xeons to two quad-core Xeons, and run Geekbench on their new eight-core Mac Pro. I thought it’d be interesting to see how the performance of this eight-core Mac Pro compares to a couple of the stock four-core Mac Pros.
Setup
Mac Pro (Quad-Core Xeon @ 2.33GHz)
- Two Intel Xeon E5345 quad-core processors @ 2.33GHz
- 4096MB RAM
- Mac OS X 10.4.8
- Geekbench 2006 64-bit (Build 242)
Mac Pro (Dual-Core Xeon @ 3.00GHz)
- Two Intel Xeon 5160 dual-core processors @ 3.00GHz
- 4096MB RAM
- Mac OS X 10.4.8
- Geekbench 2006 64-bit (Build 242)
Mac Pro (Dual-Core Xeon @ 2.66GHz)
- Two Intel Xeon 5150 dual-core processors @ 2.66GHz
- 4096MB RAM
- Mac OS X 10.4.8
- Geekbench 2006 64-bit (Build 242)
I’m reporting the baseline score, rather than the raw score, for each benchmark (where a score of 100 is the score a Power Mac G5 1.6GHz would receive). Higher is better.
Overall Score
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Emulate 6502 (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Emulate 6502 (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Blowfish (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Blowfish (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
bzip2 Compress (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
bzip2 Compress (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
bzip2 Decompress (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
bzip2 Decompress (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Floating Point Performance
Mandelbrot (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Mandelbrot (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Dot Product (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Dot Product (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Dot Product (single-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Dot Product (multi-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
JPEG Compress (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
JPEG Compress (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
JPEG Decompress (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
JPEG Decompress (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Read Sequential (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Read Sequential (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Write Sequential (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Write Sequential (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Allocate (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Allocate (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Write (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Write (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Copy (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stdlib Copy (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Copy (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Copy (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Copy (single-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Copy (multi-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Scale (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Scale (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Scale (single-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Scale (multi-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Add (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Add (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Add (single-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Add (multi-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Triad (single-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Triad (multi-threaded scalar)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Triad (single-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Stream Triad (multi-threaded vector)
Mac Pro (Eight Cores @ 2.33GHz)
Mac Pro (Four Cores @ 3.00GHz)
Mac Pro (Four Cores @ 2.66GHz)
Conclusion
When it comes to processor-intensive multi-threaded tests, the eight-core Mac Pro is certainly faster than both four-core Mac Pros. However, the eight-core Mac Pro is slower than both four-core Mac Pros when it comes to single-threaded tests, thanks to the fact that its cores run at 2.33GHz (compared to 3.00GHz and 2.66GHz for the four-core Mac Pros). Heck, any processes that uses four threads or less will be faster on the four-core Mac Pros than the eight-core Mac Pro; you’re only going to notice a performance benefit when processes take advantage of the extra cores the eight-core Mac Pro offers.
Should you run out and upgrade your four-core Mac Pro to an eight-core Mac Pro? If you have to ask that question, then probably not. This is the sort of upgrade that appeals to hardware enthusiasts and users that really need more than four processor cores.
Would it make sense for Apple to offer an eight-core Mac Pro? Maybe, if the clock speed of the quad-core processor was comparable to the clock speed of the dual-core processor. Even then, I’m not sure how many users would find the four extra cores worth the extra money.
That doesn’t mean I can’t covet an eight-core Mac Pro, though.
What you overlook in your conclusion is the concept of running a bunch of processes simultaneously. If you know you have a Multi-Threaded Workload that includes running multiple applicaitons or even multiple instances of one application that can use anything from 2 to 4 or more cores at once, then the 8 core Dual Clovertown Mac Pro will provide a lot of benefit even if none of each application can use any more than 4 cores.
The idea that you need to be using only applications that can use more than 4 cores is not correct. I am certain I can hose an 8 core Mac Pro easily with only two applications I use intensively to crush video daily – Toast and Handbrake. Both can use up to 4 cores and I regularly like to run 2 or 3 Toasts simultaneously while running 2 or 3 Handbrakes simultaneously. Even the 8 core Mac Pro won’t be able to keep up with my multi-threaded workflow. And I’m sure my workflow is only the tip of the iceburg when it comes to the need for more cores. I see a lot of misinterpretation of how 8 cores will help by testers so far.
These are not the kind of tests that should be run. Try recording some EyeTV HDTV with an EyeTV Hybrid ATSC HDTV off air tuner. Then crush sets of those recordings with Toast 7.1 UB to DVD Images on the 3GHzMP (Max Quality Settings) while crushing a second set of recordings with a second copy of Toast 7.1 UB on the same 3GHz MP then do the same on the 8 core and you will see a dramatic improvement in speed of completion.
Multimedia said:
Oh, certainly! Generally I only run one CPU-intensive application at a time, but there are people who run several at once (and I keep forgetting about them). I should’ve been more clear in my post — I’m sure there is a market for eight-core computers; I’m just not sure how big the market is right now.
I can’t speak for everyone, but my own personal workflow does involve having a number of applications open at once but generally only one of them is doing grunt work at a time. Granted, I’m working with photos, which doesn’t have the long rendering/processing times that, say, video would, but still.
Also, does anyone run multiple instances of any apps in OS X? I know this happens under Windows, but in OS X I don’t really see multiple instances happening unless your app is a one trick pony and you have a definite need for a second pony.
Design optimization codes typically run a sequence of computational blocks, each block consisting of many parallel processes, which may themselves may contain blocks decomposable into parallel processes. As the number of cores increase along with the technology, much advantage is there to be had for this sort of algorithm.
the other consideration beyond video is audio processing. Running Logic, or any other VST/rewire/AU host, while at the same time running multiple VST’s and VSTi’s will eat up processor speed, and if you would want to run, I don’t know, say 15 different VSTi’s running multiple instances at the same time, you’re talking about a huge need for multi-core set-ups, and the more cores the merrier. This is especially true when you consider that most VSTi developers aren’t really known for creating hugely efficient programs.
Any creative industry will benefit from this, though yeah, that probably doesn’t affect folks that want to just do e-mail or iLife stuff – unless you’re using iDVD to burn an iMovie with iTunes and iPhoto integration all at the same time. Even then, you probably would be fine with the faster 4-core set-ups.
One problem you didn’t mention. As the number of processors increase, the amount of contention for common memory objects increases. Internal OS-level locking (needed to prevent corruption of these objects) can create bottlenecks that all threads have to wait for.
This is why even massively multithreaded apps won’t see a 2x speedup when you double the number of cores. It also can cause single-threaded apps to run slower than they would on a system with fewer cores, even at the same clock speed.
This creates a very strong rate of diminishing returns. Operating systems that can support massive numbers of processors (or cores), like some of the systems produced by IBM, SGI and Sun, are not using generic SMP tech. They need specialized code in the kernel (fine-grained locking, duplicate copies of some objects, alternate memory management schemes, etc.) to make it perform well.
I’m sure we will eventually see an 8-core Mac, but Apple is going to need to make some changes to Mac OS X (and possibly some of their apps) if they want to make efficient use of all those cores.