Altivec vs SSE2

I'm about to write a Cocoa app that will make the FPU cry for its mommy and I was all excited about using Altivec optimizations in my code. But with the new intel macs on the way I was wondering if I'd be better off optimizing for SSE2. I don't have access to an Apple/Intel developer machine so I can't run any comparisons myself. I keep hearing that Altivec is better than SSE2 but I don't know who to believe.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Accelerate framework

Might be worth investigating

http://developer.apple.com/performance/accelerateframework.html

If your application is computationally intensive, you need to know about the Accelerate framework. The Accelerate framework is a set of libraries containing high-performance vector-accelerated libraries that run on both PowerPC-based Macintosh computers and the upcoming Intel-based Macintosh computers. Using the framework can be very advantageous, in terms of code maintenance and reliability across the architectures.

At WWDC 2005 this question

At WWDC 2005 this question was explicitly answered:

the strategy to use is to use the Accelerate framework, the code behind the interface and libraries will be highly optimized by Apple engineers for whatever platform you are running on. Of course there will probably be some performance gains if you hand roll your own code for AltiVec or SSE2, but you won't be able to just pick your code up, compile it and run it whereever you have XCode.

--Ivan