diff options
author | Erik Tomusk <E.Tomusk@sms.ed.ac.uk> | 2012-12-06 09:31:06 -0600 |
---|---|---|
committer | Erik Tomusk <E.Tomusk@sms.ed.ac.uk> | 2012-12-06 09:31:06 -0600 |
commit | 3dc7e4f496ad3ddab3010f8e7fdfce683ffdbdfb (patch) | |
tree | 854164f75e2fd4cfafa88668025c02e2cfcdd115 /src/cpu/checker | |
parent | 150e9b8c6875493c0b1a11391638b895d551e45f (diff) | |
download | gem5-3dc7e4f496ad3ddab3010f8e7fdfce683ffdbdfb.tar.xz |
TournamentBP: Fix some bugs with table sizes and counters
globalHistoryBits, globalPredictorSize, and choicePredictorSize are decoupled.
globalHistoryBits controls how much history is kept, global and choice
predictor sizes control how much of that history is used when accessing
predictor tables. This way, global and choice predictors can actually be
different sizes, and it is no longer possible to walk off the predictor arrays
and cause a seg fault.
There are now individual thresholds for choice, global, and local saturating
counters, so that taken/not taken decisions are correct even when the
predictors' counters' sizes are different.
The interface for localPredictorSize has been removed from TournamentBP because
the value can be calculated from localHistoryBits.
Committed by: Nilay Vaish <nilay@cs.wisc.edu>
Diffstat (limited to 'src/cpu/checker')
0 files changed, 0 insertions, 0 deletions