Objectives
The programming projects, using simplescalar, is intended to connect
the theoretical concepts learnt in the lecture to real architectures
and applications. Specifically, you will be exploring some of the
solution techniques covered in class in the context of a 'real'
processor and studying how the design affects the performance of an
application. In the first two projects we will focus on the impact of
branch prediction mechanisms and the cache organization on the
performance of application benchmarks. The final project is more
ambitious in scope and attempts to bring all the concepts and
techniques together in searching for a (possibly hypothetical) optimal
processor configuration for a set of benchmarks that you choose.
Requirements
In the programming projects you are to use SimpleScalar
to evaluate the performance of various benchmarks. It has already been
installed in the computer lab in Academic Center 7th Floor, so all you have to do is download the
benchmarks and use
it. (For more info see the Simple Scalar
Information link). Be sure to allow adequate time to run the
simulations, analyze the results, and write a complete readable report. It is suggested that you
try to summarize data in a clear manner using tables and/or
graphs. Conciseness and results are more important than long
descriptions of process. The grading will be based on the correctness,
and completeness, of the experiments and the depth of your analysis.
Your reports (for Projects 1 and 2) are
limited to 5 pages, using a 12 point font and 1.5 line spacing (you can
use extra pages for figures if need be). The format of the report
should follow the outline below:
1. Team Members/Authors
2. Abstract (summarize the report’s
conclusions in 150 words or less)
3. Experiments: state what options you
studied/ being studied, and what parameters you varied.
4. Results. (make
sure you tabulate and analyze the results -- simply
handing in the output of the
simulations will result in a failing grade).
5. Conclusions (summarize critical results and key insights
learned about the effect of the parameters
examined on performance). Show the best performance (you have to figure
out how you will measure the performance!) you were able to
obtain for each benchmark.
For project 3, the first four items above are the same BUT each team
member has to provide their own analysis -- no collaboration is
permitted. More details will be provided on the document describing
Project 3.
|