ChampSim is a trace-based simulator for a microarchitecture study which uses traces to emulate a processor execution. ChampSim comes with example implementation of branch predictors, pre-fetchers and Replacement policies. In this assignment we have implemented,
The three of use implemented the following(in the above order):
- Prefetcher -> Best Offset Predictor pre-fetcher
- Replacement policy -> BIP, DIP-SD policies
- Branch Predictors -> Three variants of Gshare, Pshare, Tournament branch predictors
See our report and the references papers for details on our implementations.
All our implementations were run on the 8 traces listed in the report. The results can be found in(see results folder):
To utilize our implementations, copy the requisite files from folders in this repo to the corresponding folders in the ChampSim repo. After this, build ChampSim, with the requisite policies as command line arguments.