Programming Assignment 5

CS 5621

15 points, Due Thursday, May 3


Overview

For this assignment you will write software to simulate cache performance using an execution trace similar to the traces used in the two previous assignments.

Execution Trace Format

The following classification strings give you information about memory accesses in an execution trace.

Here addr is the decimal address of the load or store. You can ignore all other classification strings.

Specifications for Your Software

The software that you write for this assignment should allow the user to specify the following parameters. It should be able to handle at least the options listed in parentheses.

The replacement policy in all cases should be LRU.

The software should display the following information to the user.

As before, you can write the software in any language, including scripting languages such as perl.

Implementation

Suggestions for implementation will be presented in class.

Testing Your Code

For early testing, you should test your code on some of the small trace output files in the directory ~gshute/public/cs5621/pa3. For final testing, you should use the following trace output file.

This trace output files has been recently added. You should copy it into your own directories before the due date.

What to Turn In

You will need to demonstrate your program on the due date. For the demonstration, you will need to set up for accessing the software that you have written, then let the TA execute your software. You should provide clear written documentation describing how to run the software. You may lose some points if the TA needs verbal explanation to run the software.

The demonstration will be run on the trace output file matrix.trace.out.

When you have demonstrated your software, you should also turn copies of all files that you have written.