Lab 7 - CachesIntroIn this lab you will be exploring cache design trade offs. You will build a number of different caches, and see how these design choices affect the number of memory accesses. A sample simulation program, written in C, can be downloaded here and a version in C++ can be downloaded here You can use a modified version of the PTLSIM simulator to get an executable's memory trace. This executable should work on any compiled C/C++ application. To use it call ./ptlsim with your executable as an argument (i.e. "$./ptlsim a.out"). The simulator should output two files ptlsim.log, and ptlsim.cache. The .cache file will hold a trace of instruction and data loads for your executable. PTLSIM is used to generate traces of any compiled program you have installed. You can generate traces if you want to test your simulator on multiple programs, but we are only grading the performance on the trace below. DeliverablesYou should build a cache simulator that reads one address trace file and simulates multiple cache architectures and reports the miss rate (). Your simulator should support all the following attributes:
The output of your simulator should have to following format.
You can build your simulator in C/C++, or Python. If you want to use a different language please check with the TA first. Your program should read from standard input, and write to standard output. To test your simulation you can use the memory trace file here. (If oyu are having problems with the zip, you can try the original file).The output for this file should look like:
Turn-In:Each group should turn in one tar file to iLearn. The contents of which should be:
|