At Microsoft’s annual Windows Hardware Engineering Conference (WinHEC) in April 2005, Bill Gates predicted that 64-bit hardware,
operating systems, and software would “transform the way we work and play.” Systems using 64-bit processors would be mainstream
by the end of 2006, he said, and 64-bit computing at the server level would happen more quickly than any other platform changeover
in the past.
Certainly, the building blocks for enterprise 64-bit computing on volume processors are falling into place. Today, enterprises
have a wide choice of reasonably priced server and desktop hardware based on AMD64 and Intel EM64T architectures.
By adding 64-bit extensions to the existing IA-32 (x86) instruction set, these systems run most legacy 32-bit operating systems
and software with few or no hiccups.
In fact, both AMD and Intel have been upgrading their x86 processor lines so quickly that it’s becoming difficult to find
any new server or workstation hardware that isn’t 64-bit enabled. Undoubtedly, desktops are poised to follow suit.
As of May 2005, users now have a choice between 64-bit versions of Linux, Windows XP Professional, and Windows 2003 Server.
The final building block, and the one that takes the longest, is software.
“One thing we’ve learned,” says Nick Carr, marketing manager at Linux vendor Red Hat, “is that ISVs don’t like to support
any more OSes than they absolutely have to.”
Linux users have a pretty good supply of 64-bit database and other enterprise applications (see table “Vendors Ramp Up for
64-Bits,”), since the 64-bit kernel has been around since AMD’s Opteron launch in April 2003. Windows x64 applications have
begun trickling in, with the notable addition of Microsoft SQL Server 2005 in early November.
So, is it time to make the switch to 64-bit hardware and software? Will you really see great leaps in application performance
and stability? Which applications should you focus on first? And what are the issues that are likely to come up in the process?
The answer is actually a mixed bag.
Thanks for the memory
Memory addressing is one of the primary benefits of 64-bit computing. The maximum memory today’s 32-bit processors, operating
systems, and applications can address directly is 4GB. Intel’s 32-bit Xeon provides a work-around called Paging Address Extensions,
which ups the limit to 8GB, but it’s a clumsy work-around at best.
With 64-bit EM64T and Opteron chips, the amount of memory that operating systems and software can address directly rises to
128GB for desktops and 1TB for servers. The theoretical memory-addressing limitations of 64-bit processing are actually on
the order of 18 exabytes; the limit for Intel’s 64-bit Itanium chip, for example, is 1,024TB. For most of today’s mainstream
desktop and server applications, however, that much memory will probably not make much of a difference.
“In most enterprise environments, file serving, Web serving, and traditional infrastructure applications will have no reason
to move to 64-bit for a long time,” says Jay Bretzmann, director of IBM’s xSeries high-performance division. If you’re running
applications and workloads that need and can benefit directly from such massive amounts of memory, however, you’ll see a definite
benefit in performance and scalability.