Skip to content

A slight modification to the original Valgrind's callgrind for a simple cache trace generation. Original code: git://sourceware.org/git/valgrind.git

Notifications You must be signed in to change notification settings

dgist-datalab/valgrind_cachetrace-old

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

About

A slight modification to the original Valgrind's callgrind for a simple cache trace generation. Original code: git://sourceware.org/git/valgrind.git

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published