adityagarg12 / COL216-Assignment-3

MESI Cache Coherence Simulator for Multicore Systems

Repository from Github https://github.comadityagarg12/COL216-Assignment-3Repository from Github https://github.comadityagarg12/COL216-Assignment-3

COL216-Assignment-3

How to Compile and Run

Compilation

To compile the code, use the make command in the terminal:

make

This will generate an executable file named L1simulate.

Generating the Report

To generate the report.pdf document, use the make report command:

make report

Ensure that you have texlive installed on your system. You can install it using the following commands:

sudo apt update
sudo apt install texlive-latex-base
sudo apt install texlive-latex-extra

Cleaning Up

To remove the executable and the generated report.pdf document, use the make clean command:

make clean

Running the Executable

You can run the executable using the following command:

./L1simulate [OPTIONS]

Usage

The program accepts the following options:

  • -t <tracefile>: Name of the parallel application (e.g., app1) whose 4 traces are to be used.
  • -s <s>: Number of set index bits (number of sets = 2^s).
  • -E <E>: Associativity (number of cache lines per set).
  • -b <b>: Number of block bits (block size = 2^b bytes).
  • -o <outfile>: Logs output in a file for plotting, etc.
  • -h: Prints this help message.

Example

Here is an example of how to run the program:

./L1simulate -t app1 -s 5 -E 2 -b 5 -o output.txt

About

MESI Cache Coherence Simulator for Multicore Systems


Languages

Language:TeX 52.7%Language:C++ 46.9%Language:Makefile 0.4%