macintel faster than altivec and the codewarrior?

Thousand Operations per Second (greater = faster)
compiler gcc 4.0 CW 9.5 VC++ 2003 ICC 8.1
os OS X 10.4.1 WinXP SP2 / Win2003
cpu G5 2.0 X 3.4 PM 1.7 X 3.4 PM 1.7
multiply add 2000 2500 909 917 709 714
inner product 1000 909 917 1282 917 1064
polynomial 833 1111 493 377 535 457
hypotenuse 357 385 267 145 267 149
complex multiply add 357 --- --- --- --- ---
predicate 1250 1250 --- --- --- ---
slicing 227 286 --- --- --- ---
power 50.3 56.5 --- --- --- ---
trigonometric 71.9 70.4 24.2 18.0 43.5 25.4

One Monday night in June, Steve Jobs ripped the PowerPC heart out of the Macintosh and slammed in an Intel one. Will this strange beast, the Macintel, succeed in being the low-cost, low-heat and high-power solution that the G5 never was? Will we really miss Altivec, the SIMD engine for PowerPC, and Codewarrior, the high-end compiler for the Mac, in the brave new world of Universal Binaries, SSE and Xcode? The macstl 0.3 benchmark lets us gaze into that crystal ball.

Today’s match pits our old stalwart, the G5 2.5GHz (G5 2.0) against two Pentiums that you might find inside the Macintel. The heavy server iron of the Xeon 3.4GHz (X 3.4) is the best of the last generation Pentium 4 architecture. The fleet-footed Pentium M 1.73GHz (PM 1.7) or Centrino, started life as a chip for mobiles but is now the way of the future for Intel. We’ve outfitted them with the latest operating systems and compilers — and while it’s not Mac OS X running on an Intel-based Apple Development Platform, these Windows-based systems should give us a good run for their money.

Times Faster than Scalar Loops (greater = faster)
compiler gcc 4.0 CW 9.5 VC++ 2003 ICC 8.1
os OS X 10.4.1 WinXP SP2 / Win2003
cpu G5 2.0 X 3.4 PM 1.7 X 3.4 PM 1.7
multiply add 3.4 4.3 1.8 2.7 2.4 3.2
inner product 3.0 2.7 3.9 4.0 1.0 1.0
polynomial 2.9 5.0 1.3 1.5 2.8 3.0
hypotenuse 3.6 7.4 4.6 5.4 2.0 1.7
complex multiply add 2.4 --- --- --- --- ---
predicate 1.6 1.5 --- --- --- ---
slicing 0.7 0.9 --- --- --- ---
power 7.0 6.4 --- --- --- ---
trigonometric 21.2 17.4 5.4 2.8 19.7 8.9

The commentary

macstl 0.3 keeps getting faster. The inner product and trigonometric tests have improved over 0.2 — trigonometry sees gcc 4.0 drawing even with Codewarrior 9.5 in Altivec, and ICC 8.1 edging its Xeon showing from the last time in SSE. macstl still beats the crap off autovectorization, despite both gcc 4.0 and ICC 8.1 now autovectorizing their scalar loops.

As for compilers, Codewarrior still holds the performance crown — barely. The first PowerPC compiler and IDE on the scene during the last great processor swap in the Apple world, Codewarrior occupies a soft, sweet spot in many a Macintosh programmer’s heart. But the magic combination of open-source hard work and Apple ingenuity with the Apple gcc team should see it dethroned before long.

It’s a different story with the CPU’s. To beat today’s slowest 2.0GHz Power Mac on the trig test, an Macintel machine would have to sport a 5.6GHz Xeon or a 4.8GHz Pentium M. Looks like Jobs and Otellini have their work cut out for them.

Mon, 27 Jun 2005. © Pixelglow Software.
Links
Search
Download
Purchase
Discuss