Road to Mac OS X Snow Leopard: the future of 64-bit appsSnow Leopard's across-the-board leap to 64-bits, from the kernel to all of its bundled apps, will make more memory available and boost performance. However, Apple will also need to manage its 64-bit lead and organize its developers. Here's why.
Following the initial introduction to 64-bit computing leading up to Snow Leopard, a second segment outlining issues related to the amount of RAM that can be installed and actually used by the system, and a third segment examining how much memory a specific app can use and how performance will improve with 64-bit addressing, this fourth segment will look at how the market for 64-bit apps is unfolding and how Apple has pioneered 64-bits on the desktop.
Road to Mac OS X Snow Leopard: 64-bits
Road to Mac OS X Snow Leopard: 64-bits, Santa Rosa and the great PC swindle
Road to Mac OS X Snow Leopard: Twice the RAM, half the price, 64-bits
Road to Mac OS X Snow Leopard: The Future of 64-bit Apps
The rise of 64-bit desktop CPUs
Apple took an early lead in providing 64-bit support for desktop computers with Mac OS X Panther and the PowerMac G5 in 2003, which enabled users to tap into the G5's 64-bit instruction set. At that time, Intel's 64-bit strategy was Itanium IA64, but every year the outlook for the IA64 architecture got worse. Microsoft released an IA64 version of Windows XP, but nobody was buying any Itanium workstations so it didn't really matter. In 2002, HP bragged a distant lead in selling Itanium workstations (without stating exactly how many), but by 2004 it had dumped the entire line.
Alongside the new G5, AMD introduced the first processors using its new AMD64 architecture: the server-oriented Opteron in April 2003 and the desktop Athlon 64 in September. AMD64 enhanced the existing x86 family of CPUs with 64-bit instructions and other improvements rather than trying to replace it outright, as Intel had with the Itanium IA64. The industry had already aligned behind Itanium at great expense, so AMD's technology looked unlikely to make any headway in the PC world. In late 2000 a pundit in Windows IT Pro wrote, "Seeing Microsoft adopt the AMD chip is about as likely as seeing pigs fly." (Clash of the 64-Bit Architectures)
Itanium's EPIC failure (late, expensive, and underpowered) was crushed by AMD's Sledgehammer when Microsoft announced it would port Windows XP to AMD64 in 2003, and Intel was forced to sheepishly follow behind AMD and implement the same architecture in its chips. Intel began calling its version of AMD's technology "EMT64T," but AMD, Intel, and Microsoft eventually agreed to rename the new 64-bit PC architecture as x64.
The developing market for 64-bit systems
Microsoft wasn't able to ship its first x64 version of Windows XP until the second quarter of 2005. By then, Apple had shipped two years of PowerMac G5s, introduced its Xserve G5, greatly enhanced its 64-bit support in Mac OS X Tiger (adding the ability to address vast new 64-bit virtual memory spaces), and had even been shipping the iMac G5 to consumers for nine months. Many G5 Mac users were benefitting from a 64-bit OS without even knowing it before the 64-bit version of Windows XP appeared for early adopters of x64 PCs.
However, the pace of IBM's G5 development had begun to slip, and so shortly after the initial shipment of Windows XP x64, Apple announced its plans with Intel to migrate to x86, initially to dodge the larger bullet of stagnant G4 development that had hampered Apple's laptop line, but eventually to migrate from the G5 to the very promising 64-bit CPUs Intel had in the pipeline for the next fall.
In 2006, Apple transitioned its entire product line to Intel, and over the following year it moved even its desktop and laptop systems entirely to Intel's 64-bit Core 2 processors. It also released Mac OS X Leopard, with additional support for graphical 64-bit apps in addition to the existing 64-bit servers and 64-bit virtual memory found in earlier systems.
Despite two and a half years of Windows XP x64, and nearly two more years of Windows Vista x64, Microsoft has still seen only minor adoption of its 64-bit computing platform. Apple is now five years deep into delivering a 64-bit OS for consumer hardware, and has moved to selling 64-bit hardware across the board for over a year. Will Apple be able to take any advantage of that lead?
The 64-bit APIs
While 64-bit hardware, virtual memory, and related improvements benefit even 32-bit software running on Mac OS X, the greatest advantage comes when running 64-bit software, particularly on Intel Macs, where a combination of factors combine to result in a significant overall improvement when using both 64-bit hardware and software. That makes the release of 64-bit Mac apps an important topic.
Apple's cancelation of portions of 64-bit Carbon hamstrung legacy code developers such as Adobe, meaning that Photoshop CS4 will only be available as a 32-bit app on the Mac. Currently, the only 64-bit apps Apple ships with Leopard are Xcode, Chess, Java, and Quartz Composer.
Snow Leopard, which will run on both 32- and 64-bit Intel Macs, will deliver 64-bit apps across the board (that is, universal "32/64-bit apps" that run on either architecture appropriately). That will give a nice boost to users of 64-bit Intel Macs (most of the Macs sold over the last two years), who have so far been hampered by the TLB flush issue currently affecting 32-bit apps, as described in the previous segment.
New 64-bit apps on Snow Leopard will get an even bigger boost from being able to take advantage of the additional registers on x64 that are so desperately missing from the 32-bit x86 architecture (but not PowerPC).
The significant boost that comes from recompiling Intel Mac apps as 64-bit, added to the relative ease in delivering them and the increasingly large share of the Mac installed base running a 64-bit OS, should result in lots of new support for 64-bit apps over the next year. Additionally, a lot of the code that would benefit most from 64-bits is from the open source world, making Mac OS X's compatibility with the LP64 model used by 64-bit Linux useful as well.
On page 2 of 2: What About Proprietary Apps?; More 64-bit Macs?; and Can Apple maintain its 64-bit lead?