Publication | Closed Access
Branch history guided instruction prefetching
52
Citations
19
References
2002
Year
Unknown Venue
EngineeringComputer ArchitectureSoftware EngineeringProcessor ArchitectureSoftware AnalysisHardware SecurityHigh-performance ArchitectureProcessor PipelineSystems EngineeringParallel ComputingInstruction-level ParallelismPerformance PredictionBranch HistoryComputer EngineeringComputer ScienceVirtual MemoryProgram AnalysisSoftware TestingParallel ProgrammingInstruction CacheSystem SoftwareBranch Instruction
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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1