Using SimpleScalar Simulator at UW
The simulator is located on in the four instructional machines (tahiti,
sumatra, ceylon, fiji). Everything relevant is in the top-level
directory /cse/courses/cse471/01au.
This directory contains the following subdirectories
-
simplesin-2.0/: This contains the binaries for the
simulator. The one that you need to use is called
sim-outorder. This is the detailed microarchitecture simulator
which models in detail an out-of-order microprocessor with branch prediction,
caches and external memory.
-
tests/: This contains pre-compiled executables (for the SS
machine) provided with the distribution. These contain simple programs to test
the simulator.
-
spec95-little/: The SS executables in this directory contain the
executables from the SPEC95 benchmark suite. (The "little" refers to
the fact that we are using little endian machines.)
-
config/: This directory contains the default configuration
file. The simulator can be configured by using command-line options or by
specifying a configuration file using the command-line option -config
<configfilename>
-
input/: This contains sample inputs for the various SS
executables. For example for the file perl.ss in
spec95-little it contains a perl script
charcount and an input file for a perl script
all_gre_words.
So to run the above program, the following command needs to be issued in the
top-level directory:
simplesim-2.0/sim-outorder spec95-little/perl.ss inputs/charcount
inputs/all_gre_words
(This takes roughly 10min to execute, so try running some files in
tests/ or
simplesim-2.0/sim-outorder spec95-little/perl.ss -v
first to get a feel for the kind of output.
Note: The simulator outputs the statistics to stderr not
stdout, so piping it to less or redirecting the
output will not work. Use
command |& less
or
command >& output-file