Inside the Intel-based Mac

analysis
Jun 15, 20053 mins

Mac developers are enthusiastically on board, and the reason is Tiger

Apple’s shift to Intel is a good thing for everybody who has or is considering acquiring a stake in the Mac. (I personally have no stake in Apple’s future and own no stock.)

The excitement at Apple’s Worldwide Developers Conference was off the scale. Tiger is such an impressive technological leap forward that this Intel business was off the radar by the second day of the conference. If all the analysts and pundits could actually grasp Tiger’s documentation, you wouldn’t be hearing all the doomsday predictions.

The way Apple set up the PowerPC-to-Intel-x86 transition, or G4-to-P4 as I’ve come to call it, will go unnoticed by the majority of Mac desktop users and developers. Fence-sitters who have been eyeing the Mac but who balk at the price will find that, side by side, Intel- and PowerPC-based Macs will be almost indistinguishable.

I’ll tell you why I use the words “majority” and “almost” above. Software that assumes it’s running on a PowerPC will likely break. But Mac developers are Unix developers, so such architectural assumptions are rare in OS X code; they’re the kinds of issues that programmers would be embarrassed to admit exist in their software.

Instead, the issue most likely to trip up developers is byte order.

The PowerPC is a mathematical genius; Freescale’s G4 and IBM’s G5 implement a unique on-chip vector math accelerator called Altivec, and nothing can touch it for performance. Altivec requires hand-coding to exploit, and frankly, code that really benefits from Altivec can’t be converted to Intel’s SIMD (single instruction, multiple data) math functions. However, if programmers abstract their handmade Altivec code to C, they’ll be able to use Apple’s new Accelerate Framework, a library of 4,500 complex math functions, which abstract platform differences.

But some of Apple’s Intel hardware is not covered by NDA. The machines demonstrated at the conference run 3.6GHz Pentium 4 CPUs. The documentation made public by Apple indicates that the Xcode 2.1 development tools will support Intel’s Hyper-Threading facility. In contrast to Apple’s PowerPC development documentation, coding guides for Tiger on Intel do not encourage coding for the least-capable platform. My suggestion that Tiger itself might be optimized for P4 or later got a “don’t jump to that conclusion” sort of response from Apple execs. However, Tiger supports Intel’s Hyper-Threading hardware, so it’s ready to do symmetric multiprocessing on Intel CPUs as well.

Developers are not specifically warned off Intel’s EM64T 64-bit extensions. However, there are few similarities between PowerPC and Pentium 4 when it comes to enabling 64-bit apps. I have to resort to conjecture, but I’m going to guess that Tiger will not run on Pentium 4 in 64-bit mode.

I have a pretty good idea what Apple’s Intel-based Mac desktops will look like functionally when they hit the market. They’ll use Pentium 4 — that’s a given. Looking at the range of CPUs Intel offers in its desktop line, Apple could come out with a spread covering affordable single-chip, single-core Pentium 4 machines to dual-core, Hyper-Threaded models in the midrange. What Apple does for a flagship desktop is anybody’s guess.