[Ti] A real world comparison
Chris Olson
chris.olson at astcomm.net
Thu Jun 9 21:09:47 PDT 2005
On Jun 9, 2005, at 10:13 PM, Bill Fox wrote:
> ......because its Mac OS X running on Intel CPUs is more beleaguered
> than Windows."
Well, this is a serious issue, and for those who have high hopes for OS
X on x86 there's some caveats:
G4/G5 cpu's are unusual beasts that diverge from 'orthagonal' purist
cpu design in a variety of ways; generally to get specific
optimizations.
Apple is using GCC in Xcode 2.1 It runs on and builds code for a wide
range of platforms. And yet, it suffers from poor performance. Not
because it's a poor compiler - it's one of the best compilers on the
market - but because it's a universal infrastructure, that models an
orthagonal, generic cpu design.
GCC vs IBM XLC performance comparisons on PowerPC show optimized GCC vs
optimized XLC compiles showing improvements of anywhere from 11% to 51%
on SPECint2000 scores for the IBM compiler. For floating point
performance, the difference is even more extreme - more of the numbers
are over the 50% mark than under. The G4/G5 have always had stronger
floating point, and the XLC compiler backs that up with the appropriate
optimizations to make use of the unique features of the architecture
that enables that to be true.
Apple is up against Microsoft's own optimized MS C++ compiler on
Windows, and the Intel compiler that some mainstream software vendors
will use on Windows for their builds. Both provide better
optimizations on x86 than GCC. Apple is crippling its developers by
requiring the use of Xcode, and therefore GCC, which is going to hurt
performance seriously.
I really wish I could see a bright light at the end of the tunnel with
this, but the more I look at it, I see a design for disaster on the
development end. Apple is now trying to play on Microsoft's home turf;
an area where Microsoft has had *years* of experience with
optimizations and development of tools for the platform. It's way more
complicated than simply dropping your codebase into Xcode, selecting
the checkbox for "Intel", and compiling it. All that'll get you is a
program that runs. How well it runs is another matter.
--
Chris
More information about the Titanium
mailing list