|
|
Cache Scope is a tool to profile programs based on their use of the L1 cache. It allows profiling by procedures (code centric), by variables (data centric), or a combination of procedures and variable. Consider a program with three large arrays A, B, and C, and three subroutines x, y, z. Cache Scope can report cache misses for each array, for each subroutine, or combinations such as cache misses for array A when executing the function Y. Cache statistics are reported both by the number of misses and the latency of the misses.
Cache Scope uses the hardware counters in the Itanium 2 processor, and the dyninst runtime code library to measure programs. It does not require that the programs be re-compiled (but if they are compiled -g, the statistics about variables will be far more usable).
The current version of Cache Scope is 0.1. This is the first public release of the software. The current release is only compatibile with 2.4.X Linux kernels.
To run Cache Scope, you need to have both perform (perfmon is installed in most default 2.4 Linux kernels) and Java installed.