You can work in the
same team
assigned for Project 1.
This problem requires you to use the cache simulator in simplescalar and experiment with varying cache configurations and measure the resulting performance. You will need to use the simple-scalar cache simulator.
A single run of can simulate cache performance
over a range
of associativity (cache lines per set) and
number of
sets. In this experiment, you will investigate the performance
while
executing the SPEC95 benchmarks
go and compress. The command line will be:
sim-outorder
<arguments> go.ss x y go.in
where <arguments> is the list of parameters needed to produce results for the specified cache configurations. go.ss is the SimpleScalar binary for the "go" benchmark.
"x y" are the play quality and the board size for the go simulation. "go.in" is a file that specifies the starting board position (in this case an empty file.) Performance can be measured using various metrics such as time, miss-ratio (hit-ratio), number of instructions, etc.
Experiments:
Use sim-outorder to simulate the performance of the following cache configuration(s) for
the SPEC95 benchmark
"go" and ‘compress’-
information of which was posted in project 1. You MUST run the
experiments on
these two benchmarks. Once you are done with these two, you can run the
experiments on the other benchmarks provided (or even more benchmarks
that you
wish to add). As with Project 1, the set of experiments that you run,
and your
analysis, will be taken into account when we evaluate your report.
Baseline Configuration:
· Direct mapped
· 16-byte cache lines
· 8K bytes total size
Using sim-outorder, determine whether increasing associativity or the line size gives the greater benefit. Consider a range of line sizes and associativity and cache sizes when appropriate.Use LRU replacement when appropriate (time permitting, you can experiment with other replacement strategies). Explain how you did your evaluation, the parameters you varied, give the results, and discuss the relative benefits of cache associativity verses line size. Note that you can set data cache size, instruction cache size, or unified cache size – you should specify what you selected.
Note on Experiments and Analysis: Go through the material in chapter 5 (and Appendix C) in the textbook – they have discussed experimental results and analysis of such results. This should serve as a good template for you.
Submission
Requirements:
You should follow the guidelines from Programming Project 1 (check the course homeworks webpage) for writing the report. Any deviation from this will result in penalities.