-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2095/
-----------------------------------------------------------

Review request for Default.


Repository: gem5


Description
-------

Changeset 9991:ae26c5a9ba33
---------------------------
cpu: simple: Add support for using branch predictors

This changesets adds branch predictor support to the
BaseSimpleCPU. The simple CPUs normally don't need a branch predictor,
however, there are at least two cases where it can be desirable:

  1) A simple CPU can be used to warm the branch predictor of an O3
     CPU before switching to the slower O3 model.

  2) The simple CPU can be used as a quick way of evaluating/debugging
     new branch predictors since it exposes branch predictor
     statistics.

Limitations:
  * Since the simple CPU doesn't speculate, only one instruction will
    be active in the branch predictor at a time (i.e., the branch
    predictor will never see speculative branches).

  * The outcome of a branch prediction does not affect the performance
    of the simple CPU.


Diffs
-----

  src/cpu/simple/BaseSimpleCPU.py 12a0efdde000 
  src/cpu/simple/base.hh 12a0efdde000 
  src/cpu/simple/base.cc 12a0efdde000 

Diff: http://reviews.gem5.org/r/2095/diff/


Testing
-------

X86/quick/(fs|se) pass (modulo the additional statistics). We have used it for 
a long time to warm branch predictors in several SMARTS-like sampling 
strategies with good results.


Thanks,

Andreas Sandberg

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to