Copyright: This document was prepared by Prof Bhagi Narahari (narahari AT gwu.edu)
and is made available to GW CSCI 211 students.
|
TA Office Hours: 10:00AM -- 12:00PM Friday
7th Floor Academic Center Computer Lab
|
Academic Center is open M-F from 7am-9pm.
It is closed on the weekends
|
Tompkins Hall is open M-F from 8am-10pm.
It is also open at a minimum 12pm-7pm on
Saturday and 12pm-10pm on Sunday
|
Contact the TA if you have any questions about installing or using
SimpleScalar.
SimpleScalar is preinstalled in the lab located in the Computer Science
department (7th floor of the Academic Center).
This course does not require that you install SimpleScalar on your own
computer, but you may do so if you choose. Please read
and follow the instructions below to install SimpleScalar.
The tarball of simplesim can be
downloaded from here:
simplesim-3v0d.tgz
Installing on Linux:
To install SimpleScalar on Linux(RedHat 9.0), see the SimpleScalar
Install Guide for
Linux(RedHat 9.0)
To install SimpleScalar on Linux(Ubuntu 4.0),
see the
SimpleScalar
Install Guide for Ubuntu
Installing on Windows:
Method 1 (Cygwin) - To install simplescalar on Windows
using Cygwin, here is the current install progress. SimpleScalar
installs with no problems on Cygwin when targeted for the PISA
architecture(sslittle-na-sstrix).There has been a problem however with
installing the cross-compiler. There is no version of gcc that will
compile on Cygwin and have a PISA target. This means for the 1st
homework you will have to come into lab to compile your source code or
find someone who has it installed on Linux. This should take no time at
all since you can check for compilation errors with the version of gcc
that comes with Cygwin. After you have compiled it with
sslittle-na-sstrix-gcc in the lab, just email or ftp the binary to
yourself and run it on your home installlation of SimpleScalar. This
won't be an issue for homeworks 1 and 2 since they will
use precompiled SPEC benchmarks. Any other install problems or
questions just let us know.
Method 2 (Virtual PC) - As an alternate to using Cygwin, the
SimpleScalar program can be installed to a Linux/Unix installation
running in a virtual environment such as Virtual PC. For information on
how to get Virtual PC for free, see the
GW MSDN Academic Alliance page. Please note that this method is
only recommended for students who are comfortable installing a Linux
operating system and we will not answer questions about installing Linux.
Method 3(VMware) - VMware is another
virtual machine software. The VMware server is free to download and can
be used to install one virtual Linux on your Windows PC. After
installing a virtual Linux, refer to the install Guide for either
RedHat or Ubuntu for further installation.
Additional
benchmarks that are not included with the SimpleScalar installation
have been placed here
for testing.
They can be downloaded by clicking on the respective links
Go-
AI simulation of the Go game. Required for programming project.
Usage: sim-outorder go.ss 9 9 go.in (where go.in is an empty
file in the directory you are running in)
Detailed Description:
go
description
Compress95-
Compression utility. Required for programming project.
Usage: sim-outorder compress95.ss < compress.in
Detailed Description:
compress
description
Dijkstra-
Used to find the shortest path
between two nodes
This contains the following files:
dijkstra_small.ss - The benchmark for testing, input.dat
- The input file, README.txt - The command to run the
benchmark.
Rijndael-
Advanced Encryption Standard
This contains the following files:
rijndael.ss - The benchmark for testing, input_rijndael.asc
- The input file, README.txt - The command to run the
benchmark.
Sha-
Secure Hash Algorithm
This contains the following files:
sha - The benchmark for testing, input_small.asc -
The input file, README.txt - The command to run the benchmark.
Troubleshooting
We heard that some students were having problems with the simple
scalar
install. The following tips and hints might be useful.
Compiling - To compile the source code,
use sslittle-na-sstrix-gcc like you would normally use gcc. The test
scripts(i.e. test-math) are located in:
/usr/local/simplescalar-pisa/simplesim-3.0/tests-pisa/bin.little/
(Staughton Hall)
/opt/ss/simplesim-3.0/tests-pisa/bin.little/
(Academic Center)
Since a lot of people were having problems with running the programs on
the computers in the Academic Center 7th floor Lab, Room 725l, we have
attached a user guide for the lab computers:
User Guide
Compilation Errors - Some compilers do not
handle the multiline text within the source files properly. There are
two solutions to this problem. One is to delete all of the trailing '\'
characters and new line characters to create a string on one long line.
The other is to simply add a '\' character to the first portion of the
string: "FIXME\n\". The affected file is $DIR/gcc-2.7.2.3/insn-output.c
[where DIR=/home/your-login-name/simplescalar (or your install
directory's name)] Edit the files at lines 676, 751 & 824. All
these lines use the same code.
Path Problems - If there are path problems
while installing SimpleScalar, the first solution is to make sure that
you are in the directory where the executable is and use the "./"
(minus the quotation marks) before the executable. For example:
./simoutorder example.ss
when you are in your $IDIR/simplesim-3.0 directory. The "./" was not in
the install guide for linux but has been updated. The second solution
is to update the PATH environment variable. This can be done in the
following manner:
export PATH=$IDIR/simplesim-3.0:$PATH
This will allow you to run sim-outorder anywhere. If you have the cross
compiler installed then just include it in the same manner.
More Information:
The best place to go for understanding how SimpleScalar works and what
exactly it does is to check out the SimpleScalar user's guide. We have
linked it from this page but it also can be found at
http://www.simplescalar.com/docs.html. Make sure to read sections
3,4, and 6. Programming homework 1 will have exercises using the branch
prediction functionality and programming homework 2 will be looking at
caches so make sure to understand those sections fully.
SimpleScalar
users_guide_v2.pdf
Back to
Course
Homepage