DProf
DProf is a statistical profiler that helps programmers understand cache miss costs by attributing misses to data types instead of code.
Publications
Locating Cache Performance Bottlenecks Using Data Profiling
Abstract BibTeX PDF
Aleksey Pesterev, Nickolai Zeldovich, and Robert T. Morris.
In the Proceedings of the ACM EuroSys Conference (EuroSys 2010), Paris, France, April 2010.
Software
Beware that the code is rough and it may not work on your machine. This code requires an AMD processor with IBS support.
- $ git clone https://pdos-csail-mit-edu.ezproxy.canberra.edu.au/dprof/dprof-linux.git
- This is the Linux kernel to be used with DProf. The repository is composed of multiple branches; each branch contains changes to make data collection possible. The master branch is a merge of all branches. The .config we use is also available from the mosbench page.
- $ git clone https://pdos-csail-mit-edu.ezproxy.canberra.edu.au/dprof/slab_data_profile.git
- This module allows DProf to collect IBS samples annotated with type information.
- $ git clone https://pdos-csail-mit-edu.ezproxy.canberra.edu.au/dprof/object_flow_profile.git
- This module allows DProf to collect the set of instructions that access a particulars kernel object.
- $ git clone https://pdos-csail-mit-edu.ezproxy.canberra.edu.au/dprof/dprof.git
- This is a set of Ruby scripts to aggregate the collected data.