This document is available on the Internet at:  http://urbanmainframe.com/folders/blog/20050609/folders/blog/20050609/

Mac OS X, Intel and Rosetta

Date:  9th June, 2005

Tags:

Spoof Image: Apple Power Mac G5 with 'Intel Inside' logo on case

On 6th June, 2005, Apple Computer, Inc announced that they are to switch from PowerPC processors to those made by Intel. The Macintosh Faithful were predictably shocked by the announcement (nicely illustrated by The Joy of Tech), despite the fact that rumours of the same had been kicking around the Net for a few days prior to the WWDC.

Two days later John Gruber published one of those insightful articles that are his trademark. "Bombs Away" is an intriguing commentary on Apple's switch and is definitely worth a read.

I would have liked to have been able to add my comments to Gruber's article but, as far as I can tell, his website doesn't support comments. How fortunate then that I have my own soap-box here...

To quote John Gruber:

There were two major reasons why I didn't think Apple would move the Mac to x86 Intel processors:

  1. To maintain compatibility with existing Mac software, [Apple would] need a way to run existing PowerPC Mac software on Intel-based Macs at a reasonable speed, and I didn't think that was possible.
  2. They couldn't just start selling x86-based Macs out of the blue. They'd have to pre-announce them to give developers time to build native x86 Mac software. But once they pre-announced Intel-based Macs, sales of existing PowerPC Macs would likely tank.

Both are valid, well-considered points.

Rosetta and the Universal Binary

Discussing the first point, Gruber goes on to outline "Rosetta" (described in Apple's "Universal Binary Programming Guidelines" (PDF)) and ponders, "whether - as it was described in a slide during the keynote - it’s 'Fast (enough)' and how many important apps run under it."

Obviously I cannot answer these questions conclusively because I haven't seen Rosetta in action. However I can tell you that I expect the performance to be good and the number of compatible applications to be greater than 90%. This is purely speculation on my part, but it is speculation based on experience with Binary Translators.

In 1999 I bought a powerful workstation for ray-tracing, video and image processing. The computer I bought was powered by a DEC Alpha AXP 21164 microprocessor running at the blazingly fast (for its time) speed of 533MHz. It had a massive 128MB of RAM (remember, this was 1999), boasted a Matrox Millennium II graphics card and a SCSII RAID. It ran Microsoft's Windows NT 4 Workstation (Alpha version).

The Alpha is a 64-bit RISC microprocessor and, as such, totally incompatible with programs compiled for the 32-bit CISC x86 chip. Yet it ran non-native applications like NewTek's LightWave 3D and Adobe's Photoshop much faster than they ran on their native x86 platform. It performed this miracle with a rather magical little program called FX!32.

FX!32 was a binary translator (or emulator) that dynamically recompiled x86 binaries for the Alpha CPU, in much the same way as Apple's Rosetta compiles PowerPC binaries for the x86. FX!32's performance and compatibility were remarkable. I never once encountered an x86 application that wouldn't run on the Alpha and only rarely was an FX!32 application slower than its x86 counterpart.

FX!32 Performance, courtesy of BYTE.com

Back to the Macintosh then, I believe most popular applications will eventually be ported to the x86 but, for those that don't make the transition, I totally expect Rosetta to shine (Apple wouldn't deploy it otherwise).

The Osborne Effect

Gruber's next point is also worthy of discussion. Is Apple Computer, Inc. going to suffer from the legendary "Osborne Effect", brought about by announcing new product a long time in advance of actually being able to deliver it?

Personally I don't think Apple will suffer too much in lost sales, fortunately. Because I don't believe for one minute that corporate buyers are going to delay purchases until the 2006/7 introduction of Intel-based Macs.

Why? Corporates are already conditioned to the simple fact that computers are obsolete almost as soon as they are purchased (although this is less visible in the Macintosh world). IT budgets generally take account of periodic replacements of both work-stations and servers. So why would a company, in need of new Apple hardware, postpone purchases that budgets have already been allocated for?

I am personally responsible for the procurement of computer equipment for a couple of organisations. I wouldn't think twice about recommending Power Macs or Xserve servers despite knowing that a whole new architecture will soon be launched. I have met with the same opinion in many of my peers.

On the domestic front, I do believe that the market for high-end (read expensive) Power Macs will dry up. But Apple's Mac mini is cheap and appealing enough to ride out the storm.

So Apple will continue to make a considerable profit from computer sales. When those profits begin to diminish, then the company can begin discounting to boost sales.

Let us also not forget Apple's enormously profitable iPod range. The iPod will continue to sell on its own merits and, combined with the iTunes Music Store, will continue to generate a massive income for Apple Computer, Inc.

Combine these healthy sales with Apple's existing bank balance and the ridiculously strong brand-loyalty of their customers and the signs look good for the team in Cupertino.

So Mr. Gruber, don't worry too much about the future of the Macintosh or your favourite PowerPC applications.

References