• 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