DocumentCode
2872599
Title
Branch history guided instruction prefetching
Author
Srinivasan, Viji ; Davidson, Edward S. ; Tyson, Gary S. ; Charney, Mark J. ; Puzak, Thomas R.
Author_Institution
Dept. of Electr. Eng. & Comput. Sci., Michigan Univ., Ann Arbor, MI, USA
fYear
2001
fDate
2001
Firstpage
291
Lastpage
300
Abstract
Instruction cache misses stall the fetch stage of the processor pipeline and hence affect instruction supply to the processor. Instruction prefetching has been proposed as a mechanism to reduce instruction cache (I-cache) misses. However, a prefetch is effective only if accurate and initiated sufficiently early to cover the miss penalty. This paper presents a new hardware-based instruction prefetching mechanism, Branch History Guided Prefetching (BHGP), to improve the timeliness of instruction prefetches. BHGP correlates the execution of a branch instruction with I-cache misses and uses branch instructions to trigger prefetches of instructions that occur (N-1) branches later in the program execution, for a given N>1. Evaluations on commercial applications, windows-NT applications, and some CPU2000 applications show an average reduction of 66% in miss rate over all applications. BHGP improved the IPC bp 12 to 14% for the CPU2000 applications studied; on average 80% of the BHGP prefetches arrived in cache before their next use, even on a 4-wide issue machine with a 15 cycle L2 access penalty
Keywords
cache storage; memory architecture; Branch History Guided Prefetching; instruction prefetches; instruction prefetching; instruction prefetching mechanism; Accuracy; Current measurement; Delay; History; Loss measurement; Pipelines; Prefetching; Timing;
fLanguage
English
Publisher
ieee
Conference_Titel
High-Performance Computer Architecture, 2001. HPCA. The Seventh International Symposium on
Conference_Location
Monterrey
ISSN
1530-0897
Print_ISBN
0-7695-1019-1
Type
conf
DOI
10.1109/HPCA.2001.903271
Filename
903271
Link To Document