Lab 1: Cache Memory

Table of Contents

Objective

The purpose of this lab is to understand the functionality of cache memories and to get an insight into various trade-offs related to the design of systems with cache memories.

Time Allocation

Four hours (two lab sessions) are allocated for this lab.

Theoretical Background

You should review one of the folowing resources before you start working on this lab: Also, before you start working on the 2nd and 3rd problems for this lab, you should read the instructions on how you can access the SimpleScalar tool set on IDA machines.

Assignments

  1. Cache Basics
    Solve the problem 4.8 from the course book (7th edition). If you have older versions of the book, then this is the same as problem 4.7 from 6th edition, and problem 4.13 in the 5th edition. If you don't have the book, you can ask for one copy of the text problem from the lab assistants or you can take it from /home/TDTS55/docs/lab_problems.txt.

  2. Locality of data
    This assignment requires you to use sim-cache for the simulation of two different architectures. You will run two tests on each of these architectures. After you install and run the set of examples, complete the following steps: The source code for this problem is available here.

  3. Evaluation of cache configurations
    This assignment requires you to use sim-cheetah in order to evaluate the performance of several cache configurations.

What to hand-in

Return the answers for each of the previous problems.
You should use figures where you think it's necessary.
Hand-in all the configuration files used and the outputs in the required format.
Typed hand-ins are preferred rather than hand-written ones.

Resources

The backup for this page is selflessly maintained by .