• DocumentCode
    1011953
  • Title

    Probabilistic counter updates for predictor hysteresis and bias

  • Author

    Riley, Nicholas ; Zilles, Craig

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Illinois at Urbana-Champaign, IL
  • Volume
    5
  • Issue
    1
  • fYear
    2006
  • Firstpage
    18
  • Lastpage
    21
  • Abstract
    Hardware predictor designers have incorporated hysteresis and/or bias to achieve desired behavior by increasing the number of bits per counter. Some resulting proposed predictor designs are currently impractical because their counter tables are too large. We describe a method for dramatically reducing the amount of storage required for a predictor´s counter table with minimal impact on prediction accuracy. Probabilistic updates to counter state are implemented using a hardware pseudo-random number generator to increment or decrement counters a fraction of the time, meaning fewer counter bits are required. We demonstrate the effectiveness of probabilistic updates in the context of Fields et al.´s critical path predictor, which employs a biased 6-bit counter. Averaged across the SPEC CINT2000 benchmarks, our 2-bit and 3-bit probabilistic counters closely approximate a 6-bit deterministic one (achieving speedups of 7.75% and 7.91% compared to 7.94%) when used for criticality-based scheduling in a clustered machine. Performance degrades gracefully, enabling even a 1-bit probabilistic counter to outperform the best 3-bit deterministic counter we found
  • Keywords
    computer architecture; probability; processor scheduling; random number generation; clustered machine; critical path predictor; criticality-based scheduling; hardware predictor design; hardware pseudorandom number generator; predictor bias; predictor hysteresis; predictors counter table; probabilistic counter update; Accuracy; Computer science; Costs; Counting circuits; Degradation; Hardware; Hysteresis; Microarchitecture; Pipelines; Processor scheduling;
  • fLanguage
    English
  • Journal_Title
    Computer Architecture Letters
  • Publisher
    ieee
  • ISSN
    1556-6056
  • Type

    jour

  • DOI
    10.1109/L-CA.2006.7
  • Filename
    1650137