DocumentCode
817000
Title
On augmenting trace cache for high-bandwidth value prediction
Author
Lee, Sang-Jeong ; Yew, Pen-Chung
Author_Institution
Div. of Inf. Technol. Eng., Soonchunhyang Univ., Chungnam, South Korea
Volume
51
Issue
9
fYear
2002
fDate
9/1/2002 12:00:00 AM
Firstpage
1074
Lastpage
1088
Abstract
Value prediction is a technique that breaks true data dependences by predicting the outcome of an instruction and speculatively executes its data-dependent instructions based on the predicted outcome. As the instruction fetch rate and issue rate of processors increase, the potential data dependences among instructions issued in the same cycle also increase. Value prediction and speculative execution become critical to keep the issue rate high. Unfortunately, most of the proposed value prediction schemes focused only on the accuracy of the prediction. They have yet to consider the bandwidth required to access the value prediction tables. In this paper, we focus on the bandwidth issues of the value prediction. We propose augmenting the trace cache (which was proposed to provide the required fetch bandwidth for wide-issue ILP processors) with a copy of the predicted values and moving the generation of those predicted values (which require accessing the value prediction tables) from the instruction fetch stage to a later stage, e.g., the writeback stage. Such a change will allow "selective value prediction," i.e., only those instructions which require value prediction will access the value prediction tables. It can significantly reduce the bandwidth requirement of value prediction tables. We also use a dynamic classification scheme to steer predictor updates to behavior-specific tables (such as last-value, stride, two-level, etc.). A relatively even split among such table accesses further moderates the bandwidth requirement of those tables.
Keywords
cache storage; parallel programming; bandwidth requirement; behavior-specific tables; data dependences; data-dependent instructions; dynamic classification scheme; high-bandwidth value prediction; instruction fetch rate; instruction issue rate; instruction level parallelism; predicted outcome; predictor updates; selective value prediction; speculative execution; trace cache; value prediction tables; writeback stage; Accuracy; Bandwidth; Clocks; Decoding; Hardware; Performance gain; Prediction algorithms; Registers;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/TC.2002.1032626
Filename
1032626
Link To Document