Cheetahtool

I wrote a Pintool that feeds Cheetah, a multi-configuration simple cache simulator, with instructions from my x86 programs. Note that this tool currently only works with the LRU simulators (not OPT or FA).

How to obtain cheetahtool

  1. Obtain and install Pin
  2. Obtain my Pintool (includes libcheetah).

Installation

Assume Pin is installed in /tmp/pin-2.0-2244-gcc.3.4.2-ia32-linux. Assume cheetahtool has been downloaded to /tmp
% cd /tmp
% tar xzvf cheetahtool.tgz
% setenv CHEETAHTOOL /tmp/cheetahtool-0.1
% setenv PINHOME /tmp/pin-2.0-2244-gcc.3.4.2-ia32-linux
% cp -r $CHEETAHTOOL $PINHOME
% cd $PINHOME/cheetahtool-0.1
% tar xzvf libcheetah.tgz
% cd libcheetah
% patch -p1 < ../patch_64b_c++.txt
% rename .c .cc *.c
% cd ..
% make

Using dinerotool

The cheetahtool package contains a README which with sample commandlines.

Credit

If you use this tool in your research please cite:
  1. Sugumar, Rabin A. and Santosh G. Abraham, "Efficient simulation of caches using binomial trees," Technical Report CSE TR-111-91. University of Michigan, 1991.
  2. Austin, Todd M. and Doug Burger. The SimpleScalar tool set, version 2.0, UW Computer Sciences Technical Report 1342, June, 1997.
  3. Chi-Keung Luk, Robert Cohn, Robert Muth, Harish Patil, Artur Klauser, Geoff Lowney, Steven Wallace, Vijay Janapa Reddi, Kim Hazelwood. "Pin: Building Customized Program Analysis Tools with Dynamic Instrumentation," Programming Language Design and Implementation (PLDI), Chicago, IL, June 2005.
  4. Barr, Kenneth. Pintools. October 2005. http://kbarr.net

Feedback

Comments and bugs welcome