Software Optimization Guide for AMD64 Processors

25112 Rev. 3.06 September 2005

1.5Key Optimizations

While all of the optimizations in this guide help improve software performance, some of them have more impact than others. Optimizations that offer the most improvement are called key optimizations.

Guideline

Concentrate your efforts on implementing key optimizations before moving on to other optimizations, and incorporate higher-ranking key optimizations first.

Key Optimizations by Rank

Table 1 lists the key optimizations by rank.

Table 2.

Optimizations by Rank

 

 

 

 

Rank

Optimization

Page

 

 

 

1

Memory-Size Mismatches

92

 

 

 

2

Natural Alignment of Data Objects

95

 

 

 

3

Memory Copy

120

 

 

 

4

Density of Branches

126

 

 

 

5

Prefetch Instructions

104

 

 

 

6

Two-ByteNear-Return RET Instruction

128

 

 

 

7

DirectPath Instructions

72

 

 

 

8

Load-Execute Integer Instructions

73

 

 

 

9

Load-ExecuteFloating-Point Instructions with Floating-Point Operands

74

 

 

 

10

Load-ExecuteFloating-Point Instructions with Integer Operands

74

 

 

 

11

Write-combining

113

 

 

 

12

Branches That Depend on Random Data

130

 

 

 

13

Half-Register Operations

356

 

 

 

14

Placing Code and Data in the Same 64-Byte Cache Line

116

 

 

 

6

Introduction

Chapter 1

Page 22
Image 22
AMD 250 manual Guideline, Key Optimizations by Rank