Problem solve Get help with specific problems with your technologies, process and projects.

64-bit Windows – help or hype?

Getting ready to make the move to 64-bit Windows? Get up to speed on the intricacies of the technology and the issues you might encounter with 64-bit applications.

If 64-bit isn't on your mind, it should be.

First, a little history: 64-bit technology -- even for Windows -- is not new. Unix and OpenVMS have been on it for years, and Digital Equipment Corp. (DEC) had the Alpha server running Windows NT on the 64-bit Alpha chip in the mid-'90s.

Intel acquired DEC's technology and built the Itanium chip, called IA64. Back then, we thought that would be the 64-bit Windows platform. Then Intel and AMD developed the x64, which is simply an x86, or 32-bit, processor with extensions that allowed 64-bit addressing.

The difference between the two is that Itanium is a completely new architecture. Although x64 systems don't have the high-end features and scalability of Itanium systems, x64 is good enough for most applications -- and is much cheaper. Although there are low-end Itanium systems available, the x64 has largely replaced them because of little additional benefit for Itanium's cost.

What does 64-bit technology really mean?

So, how is 64-bit technology different? Primarily, 64-bit has to do with memory allocation along with some side benefits, such as faster I/O. Take a look at the table to compare the memory allocation between x86, x64 and IA64:

32-bit (x86)

Supported physical memory Addressable physical memory Kernel mode address space (for the OS) Memory available to user mode processes
64 GB 4 GB * 2 GB 2 GB **
*This can be extended to actual physical memory size with PAE switch in the boot.ini file and applications using AWE (Address Windowing Extentions).
**This can be extended to 3 GB using the /3gb switch in the boot.ini file

64-bit (x64)

Supported physical memory Addressable physical memory Memory available to kernel Memory available to user/applications
256 GB 8 TB* 6657 GB 8192 GB
*Theoretical 64-bit address space is 16 exabytes -- this is the Windows implementation.

64-bit (IA64)

Supported physical memory Addressable physical memory Memory available to kernel Memory available to user/applications
3 TB - 4 TB 24 TB 16 TB 8 TB

Note that this table is for comparison only. Different values might apply in this table for Itanium, for example, and they could all be correct.

The implementation of the technology is really the limiting factor for 64-bit platforms. The hardware bus, DIMMs (dual inline memory modules) and other components will determine the memory limits.

In x86, the architecture was the limit. In x64 and IA64, the implementation technology is the limiting factor. While we can cluge x86 technology to use larger memory models, it is still a cluge. And 64-bit technology can already address more memory than systems can implement at this time.

Addressable memory is important because once you exhaust physical memory, the memory manager starts storing instructions in a pagefile on disk. Moving data between the page file and memory -- called paging or swapping -- hinders performance.

The best situation is to load all programs entirely in memory. In x86 this is not possible except for very small applications. The 64-bit technology expands those limits by many magnitudes.

What about 64-bit Windows applications?

What are the issues with Windows applications using 64-bit technology? Applications must be ported to 64-bit addressing to effectively take advantage of the technology. Windows for both IA64 and x64 contain a 32-bit emulation mode called Windows On Windows, or WOW, that permits 32-bit apps to run on 64-bit machines. So your new x64 laptop can run 32-bit Microsoft Office. These apps may or may not run faster than on 32-bit systems, and mileage will vary.

The current killer app for Itanium in the Windows world is SQL, Oracle and large databases that can really take advantage of Itanium's power and configuration features. Computer graphics and animation are other areas that can effectively use Itanium technology. Something to watch is the virtualization software that Hewlett-Packard Co. has developed to run on the Itanium.

More on 64-bit Windows
Buy 64-bit now; you won't regret it 

How virtualization can simplify your transition to 64-bit computing 

 Beginning with Exchange 2007, Exchange will run only on x64 platforms. That means Exchange 2007 will not be ported to 32-bit architecture and it won't run on Itanium either. Microsoft noted two interesting points in this decision. First, it said that when Exchange 2007 was released, it would be difficult -- if not impossible -- to buy a 32-bit server. Second, the company said that Itanium was overkill, and the price/performance was not advantageous for Exchange. Microsoft was pretty accurate in its prediction. Today, x64-based systems -- from laptops to servers -- are common and quite inexpensive.

Active Directory can take advantage of the larger memory addressing. In a moderately priced system, you can load even the largest of AD databases entirely in memory on x64 servers. No need for Itanium here either.

It is important to remember that throwing faster hardware at a performance problem won't necessarily fix the problem. It is not uncommon to find apps that will run faster on 32-bit machines than on 64-bit. And it may run better on x64 than Itanium. It really depends on what you are doing. If you are going to buy a Ferrari but will never drive it over 55 mph, you might as well get a Honda Civic to do the same job.

Gary Olsen is a systems software engineer for Hewlett-Packard in Global Solutions Engineering. He authored Windows 2000: Active Directory Design and Deployment and co-authored Windows Server 2003 on HP ProLiant Servers. Gary is a Microsoft MVP for Directory Services and formerly for Windows File Systems.

Dig Deeper on Enterprise infrastructure management

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.