Jump to content

Mac transition to Intel processors

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by DropDeadGorgias (talk | contribs) at 20:01, 16 August 2005 (Reasons). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

At the 2005 Worldwide Developers Conference (WWDC), Apple Computer CEO Steve Jobs made the historic announcement that the company was beginning a transition from the use of PowerPC microprocessors supplied by Motorola and IBM in their Macintosh computers, to processors designed and manufactured by Intel, a chief supplier for most of Apple's competitors.

Precedents

The Macintosh line underwent a similar transition in the 1990s, when Apple switched from the use of Motorola's 68K series of chips to their PowerPC processors, developed jointly with Apple and IBM. This took several years, and was accomplished by Apple producing versions of the Mac OS which could run on either platform, fairly low-level emulation of the 68K architure by the PowerPC models, and third party developers releasing "fat binaries" that could run natively on either architecture.

More recently Apple has brought the Macintosh line from the earlier Mac OS family to Mac OS X, a Unix-like operating system with a different user interface. This transition also took a number of years (a small percentage of older Macintoshes still run the earlier operating system), and was facilitated by the inclusion of Classic, an evironment in which an instance of Mac OS 9 could be run, permitting the execution of programs which had not been ported to Mac OS X.

A long-rumoured internal project within Apple, known as "Marklar" was designed to ensure that builds of Mac OS X were sufficiently portable as to compile for both PowerPC and x86-class processors. Jobs confirmed this, stating that every version of OS X had in fact been compiled for Intel processors as well as PowerPC. It is not known what other processors, if any, for which Apple maintains current builds.

Reasons

Jobs stated that Apple's primary motivation for the transition was their disappointment with the progress of IBM's development of PowerPC technology, and their greater faith in Intel to meet Apple's needs. In particular, he cited the performance per watt (that is, the speed per unit of heat generated) projections in the roadmap provided by Intel. This is an especially important consideration in laptop design.

In 2003, Jobs had introduced Macintoshes based on the PowerPC G5 processor and promised that within a year the clock speed of the part would be up to 3 GHz. Two years later, 3 GHz G5s were still not available, and rumours continued that IBM's low yields on the POWER4-derived chip were to blame. Further, the heat produced by the chip proved an obstacle to deploying it in a laptop computer, which had become the fastest growing segment of the personal computer industry.

Some observers were surprised that Apple had not made a deal with AMD, which has in recent years become a strong competitor to Intel, sometimes introducing technologies more quickly than the traditional industry leader. AMD's shorter track record and smaller production capacity, and Intel's significant brand awareness among the consumers and ability to also provide Apple with complete motherboard designs, have been offered as possible reasons for the choice of Intel. Also, as the laptop market was cited as a major reason for the switch, Intel was a more appropriate choice than AMD, as the Centrino line of mobile chips has been proven to deliver better performance and lower heat than AMD's rival Turion chips.

Benefits of the Move

Advocates of the transition point out software benefits. Technical users will appreciate the ability of Apple systems to run all four classes of software at near native speeds; OS X binaries, Java applications, GNU/x86 applications and potentially now Win32/.NET/x86 applications. No other hardware vendor can offer more than three of these. Virtual PC, a Windows emulation solution for Apple PowerPC sold by Microsoft, could now enjoy much more success with performance improved through virtualisation rather than emulation. For those customers wishing to achieve a more conventional environment, a dual, triple, or even quadruple boot solution (with OpenSolaris say), would be possible on an x86 Apple device. Apple have already indicated they do not intend to take steps to prevent other operating systems being deployed on their new machines.

Although most games are constrained through the use of DirectX API's not available for the Apple architecture (on either processor type), reductions in the time required to port these from Windows nevertheless might be observed if developers are able to ignore endian issues associated with moving from x86 to PowerPC.

Hurdles Associated with the Move

Reaction to the change

The announcement of the switch came as a shock to many in the Mac community; many Apple users have enjoyed the ready availability of a consumer desktop that was completely separated from the "Wintel" alliance, and ads claiming the PowerPC architecture as superior have been a key part of Apple advertising for many years. With that separation gone, many longtime Mac users have expressed fear about Apple's future, and whether Apple's brand identity will be preserved. Some of the fears expressed include

  • concerns about the quality and performance of Intel's chipsets;
  • concerns about the x86 architecture itself, and whether it will affect system performance and application quality;
  • the possibility of Windows and Windows applications running natively on Macs;
  • the early announcement of the change causing an Osborne effect; and
  • Intel forcing Apple to use the Intel Inside branding, including the decals and jingle.

Hardware oriented

There are questions over the extent to which Apple will retain control over the non-processor components of the system design. Apple is traditionally a systems builder, and some fear that Apple's industrial design philosophy may be impacted if Apple switches to generic parts. Others have said that the impact would be minimal, as Apple has slowly been switching to standard parts since the introduction of the PCI Power Mac in 1995, and that using a generic chipset in itself would not harm the Mac's image.

Apple has indicated that the new Intel PCs will not use their traditional Open Firmware. A new Intel technology for firmware, Extensible Firmware Interface (EFI), promises more functionality and removes the traditional PC reliance on the BIOS, but Apple has not yet stated which system will be used.

The use of the x86 architecture has brought forth the possibility of running Windows natively on Apple hardware, as well as using the WINE package to run Windows executables directly. Some fear that the change will make OS X a less valuable target for software developers, since Windows users could use WINE or a dual boot setup to run Windows apps instead; others say that it could be a boon to switchers, since they would not have to leave their Windows applications behind while trying out OS X. The idea of OS X being available on regular PCs has also been discussed, but Apple has said that they will not allow regular PCs to run OS X (though they have no concerns about Intel-based Macs running Windows).

Intel is seen among the Macintosh community as being a purveyor of hot-running chips. Apple themselves mocked the Pentium range in their "Burning Bunnies" advertisements of the late 1990s, and the Pentium 4 needs large amounts of power and cooling to operate, making it unsuitable for laptops and small PCs. However, the Pentium M chips, which were designed for laptop use, run much cooler than the Pentium 4, and Apple is expected to use these CPUs first.

Finally, the relative "goodness" of the x86 architecture has been discussed. Critics of the switch say that x86 was a poor choice because of its lack of hardware registers compared to the PowerPC, the awkwardness of the x86 instruction set, and the lack of AltiVec. Proponents have responded by saying that the x86 architecture has evolved greatly since the original 8086 was introduced, and that CPUs in general have combined RISC and CISC philosophies in their internal designs for some time, making the distinction obsolete; they also point out that improvements to SSE that can completely replace AltiVec are coming, and that most programmers rarely deal with x86's peculiarities now because the compiler does the work. Also, 64-bit capability was not mentioned in Apple's initial developer notes, which has worried some observers; it has since been indicated that the Pentium 4 in the developer machines has EM64T capability, and that all of the Intel chips due out by the time the Power Mac line switches over will be 64-bit. Apple has not yet released any plans for 64-bit Intel machines, though the capability will be there.

Existing applications

Java applications that don't rely on JNI, Dashboard Widgets, and scripts that execute inside an interpreter all work immediately on both processors and are immune from changes. OS X applications that can't be migrated run inside a PowerPC dynamic translator on Intel called "Rosetta." This has limitations (the biggest being that it can't run AltiVec code), but most applications that use AltiVec fall back to a G3 instruction set when AltiVec is not found, and will still run in that configuration under Rosetta. Rosetta is a large improvement over Classic since it doesn't require a whole OS to be loaded as a subsystem before the application can work.

AltiVec itself has been encapsulated since OS 10.3 by a vectorisation library; this library automatically selects between AltiVec on the PowerPC and SSE (or equivalent regular instructions) on x86.

A new version of Xcode has been released that supports the generation of Universal (previously called "Fat") Binaries for Intel and PowerPC. Cocoa applications can be ported simply by recompiling them and checking for endian problems. Carbon applications may require some additional tuning, but not of the complexity of the transition from OS 9. Applications written using Metrowerks' CodeWarrior suite will need to be moved to Xcode.

Classic will not be supported on the x86 architecture. This means that older Mac software will not run, which some users running older applications (such as QuarkXPress 4 and 5) have objected to.

See also