Article, May 2008
64 Bit Computing--Pros and Cons
by Brian K. Lewis, Ph.D,
Member of the Sarasota Personal Computer Users Group, Inc., Florida
Obtained from APCUG with the author's permission for publication by APCUG member groups.
In July 2005 I wrote an article for the Monitor on using the 64 bit version of Windows XP. My conclusions at that time were that most users should wait the arrival of Microsoftís next operating system before leaping into 64 bit computing. So Vistaís 64 bit version (Vista x64) has now been here for about a year, should you be considering a change from your 32 bit processor to a 64 bit processor? Iíll lay out some of the pros and cons of this so you can make a decision.
First, letís consider why 64 bit processing is in the future of computing. To do this we need to consider some very basic information on how computers function. As most of you are well aware, computers process information as either a 0 or a 1. Or in the really old days of computing, these were switches that were either "on" or "off". Each value constitutes one one binary "bit" or instruction. A central processor with a 32 bit instruction set can process 32 bits per clock cycle. Thus if you have a CPU that runs with a 2 GHz (2 billion cycles per second) clock cycle, it is processing 64 billion bits per cycle. Thatís the theory, in practice there are limitations which may reduce the actual processing speed. Anyway, a 64 bit processor could handle twice the number of bits per second as a 32 bit processor. Again, because of other limitations, the actual processing speed advantage is less.
There is another major advantage to 64 bit computing and that is the size of the address space or the amount of memory that can be used. For a 32 bit processor, working memory is limited to 2 raised to the 32nd power (2^32) or 4 GB of memory. A 64 bit processor can address 16 Exabytes of Ram. That's, 2 to the 64th power (2^64) or 16 Million Gigabytes! At the present there are no machines that support this much RAM. For one thing the cost of that much memory would be excessive. So manufacturers are generally limiting motherboards and chipsets to 128 GB of RAM or less as Vista x64 can only address up to 128 GB of RAM. The maximum RAM is usually greater than the 4 GB limitation of the motherboards designed for 32 bit processors.
So the question becomes, why do computers need any amount of memory even close to any of these figures? The answer relates to how people use their computers. A lot of users, and Iím one of them, open more than one application at a time. This can have a definite effect on the speed of operation of the computer. When you open an application in either Windows XP or Vista, the operating system sets aside a 4 GB memory space for the application, drivers and other required information. So each application that is open has its own 4 GB memory space. It is a rare personal computer that has 4GB or more of RAM. In fact, Windows XP can not address more that 4 GB of RAM and it uses almost one GB for its own components. So how is this handled?
The solution to the requirement for very large RAM space for each application is called "Virtual Memory". The computer stores much of the required information for an application on the hard drive. It then moves data back and forth between RAM and the hard drive as it is needed. A paging table is used to track the locations of data on the hard drive and in RAM. So, even when you open only a single application, a large part of it will be stored on the hard drive or in "virtual memory". When information on the hard drive is needed, the paging table remaps it to RAM memory and also moves data from memory to the hard drive. Because read/write access to the hard drive is much slower than read/write access to RAM, the overall processing time is much slower. If you are simply doing word processing or writing e-mail, then the speed difference is not really noticeable. If you were doing calculations using a large spreadsheet while setting up a Power Point presentation with complex graphics, then you would probably notice a slight slow down in the overall operation of your system.
So the primary advantage of 64 bit computing is the tremendous increase in address space. This advantage is also present when running 32 bit software on a true 64 bit machine. Running 32 bit software on Vista x64 is referred to as running on the Windows on Windows64 or WoW64. By utilizing the added address space of x64, the time required for loading, unloading and switching processes can be greatly reduced or eliminated. This can also eliminate the frequent hard drive cycling that is referred to as "thrashing", which can occur in a 32 bit system.
If you decide to move to a 64 bit system, just be sure to add plenty of RAM. Certainly you should have a minimum of 8 GB. The motherboard should also have a system bus designed to work with a 64 bit processor. Otherwise the bus can become a major bottleneck. In fact, you really should not try to upgrade a 32 bit machine by installing Vista x64. To really be successful, you should buy a machine which is designed from the ground up to run Vista x64. Also, the upgrade version of Vista x64 will only upgrade the 64 bit version of Windows XP.
That brings us to the "cons" about Vista x64 and 64 bit computing in general. 64 bit processors have been available for four or five years for desktop computers. However, when we relate this to machines with Windows operating systems, the big problem is slowness of the adoption of 64 bit hardware and software by manufacturers. One example is the lack of device drivers for peripheral hardware. So just what do you need drivers for? The one that affects most people is the printer driver. Operating systems donít always include a printer driver because of the great variety of makes and models. Although I know that many HP printer drivers are delivered along with the 32 bit Windows OS. However, this is not true for the 64 bit version. If a 64 bit driver is available for your printer you may have to download and install it yourself.
With Windows Vista, you not only must have a 64 bit driver, it must be a "signed" driver or Vista will reject it. A signed driver contains a digital signature or a certificate in the program code which meets Microsoftís requirements and is from a company that has a license (Publishers Identity Certificate) from Microsoft. You may have already encountered an "unsigned driver" message when you tried to install software or drivers. In Windows XP and 32 bit Vista you were able to continue the installation in spite of the lack of the signed driver. In Vista x64 this is not possible. Vista will discontinue the installation after advising you of the lack of the signed certificate. This procedure was implemented to try to stop "rootkit" malware from installing itself in the heart of the operating system Ė the kernel. Rootkits are able to hide within the computer by altering register keys and processes. By blocking the installation of unsigned device drivers Microsoft is hoping to reduce the rootkit problem.
A driver is also needed for your graphics cards. Both ATI and NVidia released 64 bit drivers for their newest cards in December, 2007. There is considerable doubt that they will produce 64 bit drivers for any of their older cards. Another reason why you have to consider new hardware when you are thinking of transitioning to a 64 bit OS. Other hardware that needs 64 bit drivers include scanners, sound cards, modems, serial ATA (SATA) / RAID and just about any other hardware peripheral. So you may need to update all of your hardware in order to get 64 bit drivers. Also, since the graphics drivers have only appeared almost a year after Vistaís debut, other hardware manufacturers may still be working on drivers. You definitely need to do your homework if you are considering the purchase of an x64 system.
Software is another area that is slow to take advantage of the extra processing capacity of Vista x64. Although, as I mentioned earlier, x64 can run 32 bit software it is done in an emulation mode. The 32 bit application can not take advantage of the wider data path that is available in x64. Although there is some advantage due to the added memory in an x64 machine, the software is not using the hardware to full advantage. Just as happened when computers shifted from 16 bit processors to 32 bit processors, there was considerable delay before manufacturers moved solidly into the 32 bit realm.
So what applications are currently most likely to have 64 bit applications that can use the full capacity of x64? Applications for creating digital content in computer-aided design and digital video editing.
Applications that require mathematical precision and floating-point performance.
Applications that involve large, high-performance databases.
Vision acquisition and analysis applications with large amounts of data moving directly into memory at rapid rates.
I suspect it will still be several years before 64 bit computing will be the mainstream for personal computers. So, unless your requirements are similar to the above list, I would suggest you stick with 32 bit systems for a while longer.
Dr. Lewis is a former university and medical school professor of physiology. He has been working with personal computers for over thirty years, developing software and assembling systems. He can be reached at bwsail at yahoo.com.
This article has been provided to APCUG by the author solely for publication by APCUG member groups. All other uses require the permission of the author (see e-mail address above).Click here to return to top