Accessibility

ColdFusion Article

 

Taking advantage of 64-bit support in ColdFusion 8


Manjukiran Pacchhipulusu

Manjukiran Pacchhipulusu

Adobe
www.manjukiran.net

Table of Contents

Created:
7 April 2008
User Level:
Intermediate, Advanced
Products:
ColdFusion

Computer applications have evolved rapidly over the past few decades. From 1971 when the first commercially available single-chip microprocessor, Intel 4004, was released till today—there has been a rapid change in computing. In the early days of 4-bit, 8-bit and 12-bit microprocessors, specialized applications were written, which solved specific computing needs. With the advent of 16-bit microprocessors based on Intel 8086 or Motorola 68000, the applications became more general and grew in complexity. Today most of the microprocessors that are used are 32-bit. These 32-bit microprocessors and the associated system software and applications represent a significant leap from the 16-bit systems and enable the user to run complex applications like databases.

As the applications got more general and complex, the hardware limitations—in terms of performance, scalability, and limit of memory address space—became exposed. The size and volume of data that are handled by these applications are always on the rise. It is due to this fact that each time a higher bit processor has been released, it caused lower-bit processors to become obsolete. The address space limitations of the now widely used 32-bit systems forecast a major constraint. There is now a growing need to migrate to 64-bit systems. Over the last several years, 64-bit systems have started evolving that include Intel x86-64 CPU, AMD Opteron, Intel Itanium, IBM POWER 64 bit architecture, etc. Most of the software vendors too are providing 64-bit applications or 64-bit ‘compliant' applications (32-bit applications that can run on 64-bit platform) to run on these 64-bit systems.

So, what does all this mean for you, a ColdFusion developer? ColdFusion 8 is one of the best and feature-rich releases ever in the history of ColdFusion. The release of ColdFusion version 8.0.1 enhances the ColdFusion 8 release and introduces the support for 64-bit computing platforms. Of course there are many more features and enhancements in the update, but this article helps you understand how to take advantage of 64-bit support of ColdFusion, its benefits and limitations. Comparison of performance of certain features of ColdFusion on 32-bit and 64-bit platforms is also presented.

64-bit computing and its benefits

64-bit computing means that the CPU system has a 64-bit microprocessor and a 64-bit data-bus. However, there are instances where a 64-bit CPU system has a 64-bit microprocessor but has a lower-bit data-bus or vice-versa. In this article, a 64-bit CPU system is considered to have a 64-bit microprocessor which can directly address physical memory with a 64-bit address and that it has a 64-bit data-bus.

The key benefits of 64-bit computing are that it can perform high-precision computations faster than 32-bit systems, and that it can directly address huge amount of physical memory.

64-bit microprocessors process 64-bit data in one clock cycle. All the registers associated with the microprocessors are 64-bit. This enables High- precision computations and 64-bit arithmetic to be performed in fewer clock-cycles as compared to 32-bit microprocessors. In certain cases like 64-bit multiplication, it is twice as fast.

32-bit microprocessors can directly address a maximum of 232 ~= 4 GB of memory, while 64-bit microprocessors have pushed this limit further and can directly address up to a maximum of 264 bytes = ~16 Exabytes = ~17.2 billion GB of physical memory. Practically speaking, this means that applications running on a 64-bit microprocessors have unlimited memory available to them. However, most of the 64-bit systems and operating systems available today pose a limit on the amount of RAM that they can recognize; for instance, Apple Mac Pro can recognize up to 32GB of memory, while Windows 2008 64-bit Enterprise can utilize 2TB of memory—both are still an incredible amount of memory.

In theory, applications that require more memory and have more computations would perform better in 64-bit systems than on 32-bit computing systems. However, there is a limitation associated with the 64-bit systems. The address references are 64-bit wide twice the size compared to 32-bit systems. According to a white paper, IBM WebSphere Application Server 64-bit Performance Demystified:

This results in an increased memory footprint and can reduce hardware cache efficiency. Therefore, applications may actually see a performance loss. General performance expectations for applications that do not specifically leverage 64-bit features are +/- 10% of 32-bit applications.

Requirements

It's not required to install ColdFusion to read this article, however, if you wish to download ColdFusion 8 Update 1 to try the features, you may do so.

ColdFusion 8 Update 1

Note: Read more about ColdFusion 8 Update 1, and download and install the latest Update if you already have installed ColdFusion 8. If you are installing ColdFusion 8 for the first time, the ColdFusion trial or purchased versions downloaded from the Try and Buy links above contain Update 1.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License

About the author

Manjukiran Pacchhipulusu is a Computer Science graduate and has been working in the software industry since 2002. He has worked as a Software Design Engineer for Test (SDET) at Microsoft for three years before moving to Adobe. Previously, he has worked on various teams, such as Microsoft Visual Studio, Microsoft Pocket PC, and Adobe ColdFusion. In his free-time, he is involved in social activities that promote the betterment of the community.