Programming with Intel Extended Memory 64 Technology: Migrating Software for Optimal 64-bit Performance

Chapter 2: Moving to Intel EM64T: ILP and Data Structures

The first difficulty is exemplified by the second chapter.
Robert French, et al., The Dynamical Hypothesis in Cognitive Science.

Because most code running on Intel EM64T will be derived from 32-bit code initially, it makes sense to examine the challenges of porting code to this new platform. One would expect the primary difficulties to come from changes in the size of pointers, as implied by the term 64-bit, and this difference is certainly one of the central challenges. Similarly, a migration must cope with changes in the sizes of fundamental data types. This chapter discusses the code changes that you must make and a few subtle repercussions that you can expect; the next chapter shows useful ways to find these items and to fix them efficiently

ILP and Architect Size

Just a few years ago, when a developer referred to a computer as being 8-bit, 16-bit, or 32-bit, the term had a very specific meaning. It referred to the standard size of a word on the processor architecture. A word is the default operand of an assembly-language instruction. Memory addresses and integers in those days were all words. Hence, when an Intel Pentium III processor was described as being "32-bit," it meant that addresses and integers that were 32 bits wide. Life was simple then.

Today, this terminology is less useful because default operands can have various sizes even on the same processor. The Intel EM64T architecture, for example, is a hybrid when it comes to the sizes of its operands.

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: CPU Chips
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.