DocumentCode :
3631215
Title :
Experiment flows and microbenchmarks for reverse engineering of branch predictor structures
Author :
Vladimir Uzelac;Aleksandar Milenkovic
Author_Institution :
Electrical and Computer Engineering Department, The University of Alabama in Huntsville, USA
fYear :
2009
Firstpage :
207
Lastpage :
217
Abstract :
Insights into branch predictor organization and operation can be used in architecture-aware compiler optimizations to improve program performance. Unfortunately, such details are rarely publicly disclosed. In this paper we introduce a set of experiment flows and corresponding microbenchmarks for reverse engineering cache-like branch target and outcome predictor structures, indexed by branch address or program path information. The experiment flows are demonstrated on the Intel Pentium M branch predictor. We have been able to determine the size, organization, internal operation, and interactions between various hardware structures used in the Pentium M branch predictor, namely the branch target buffer, indirect branch target buffer, loop branch predictor buffer, global predictor, and bimodal predictor. These findings have been validated using a functional PIN model.
Keywords :
"Reverse engineering","History","Microprocessors","Hardware","Interference","Program processors","Optimizing compilers","Pipelines","Clocks","Hazards"
Publisher :
ieee
Conference_Titel :
Performance Analysis of Systems and Software, 2009. ISPASS 2009. IEEE International Symposium on
Print_ISBN :
978-1-4244-4184-6
Type :
conf
DOI :
10.1109/ISPASS.2009.4919652
Filename :
4919652
Link To Document :
بازگشت