dgist-datalab/valgrind_cachetrace-old
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
This tool generates a virtual/physical address trace of the target application. [How to use] Step 1. Install Valgrind Go to valgrind/ dir and follow the install manual in the README. ** Note ** In the latest commit, Valgrind prints out timestamps of boot time for each trace line. If you don't want, comment out ./valgrind/callgrind/sim.c:153. //#define TRACE_TIMESTAMP Step 2. Install kernel in your system Go to kernel/ dir and run install.sh to install kernel build files. If you don't need physical trace, then skip Step 2. Step 3. Run target application with our script to generate raw trace file. You can use run_script.sh in the run_script/ dir. When you run run_script.sh with the target executable file as an input, the script will run Valgrind to generate after-cache virtual trace and send the target pid to the kernel to generate Virtual-Phyiscal mapping. Detailed manual is in the README in run_script/. In the current version, you can run only one target program at once for physical trace. Step 4. Create the physical address trace from raw trace files run_script.sh in Step 3 includes this Step 4. After step 3, you can get raw trace file, [.vout]. In step 4, you can get the physical trace file [.pout] by using the python script. Detailed manual is in the README in after_run/. After step 4, you will get [.pout] file as a final output. Format: [Read/Write] [Physical Address] Example: ... R 0x1234 W 0x2345 ... You can plot some graphs with trace files by using after_run/graph/*.py