Practical Technology

for practical people.

32-Bit to 64-Bit: Why Software Development Is Lagging Hardware Improvements


Why are you using 32-bit software on your 64-bit computer? If you just bought a top-of-the-line Sony BRAVIA 52″ 1080p 120Hz Flat-Panel LCD HDTV for $2,500, would you use a rabbit-ears antenna for your TV signal? I don’t think so!

Even though 64-bit software for UNIX goes back decades, mass availability and adoption of 64-bit operating systems and applications been slow. In theory, if you run 64-bit software on a 64-bit CPU-powered PC, you should get better performance. In practice, it’s not so clear cut. A 64-bit program that’s not optimized for a 64-bit processor can actually run worse than its 32-bit twin working on either 32- or 64-bit Windows Vista.

To make use of 64-bit’s performance and features, both the operating system and application must be optimized for the new processor. However, many developers see 32-bit software as being “good enough.” They rely on the processor’s improved speed to disguise the 32-bit code’s inherent inefficiency on a 64-bit processor. That inefficiency may not be trivial, since every call to 32-bit code must be translated to 64-bit code before it can run. For example, on Windows Vista 64-bit, 32-bit applications must be “thunked” via the WoW64 (Windows on Windows) subsystem to run. Similar methods are used in other operating systems.

More >

Leave a Reply