Processor speed continues to increase faster than the speed of access to main memory, making effective use of memory caches more important. Information about an applications interaction with the cache is therefore critical to performance tuning. To be most useful, tools that measure this information should relate it to the source code level data structures in an application. We describe how to gather such information by using hardware performance counters to sample cache miss addresses, and present a new tool named Cache Scope that does this using the Intel Itanium 2 performance monitors. We present experimental results concerning Cache Scopes accuracy and perturbation of cache behavior. We also describe a case study of using Cache Scope to tune two applications, achieving 24% and 19% reductions in running time.
['Bryan Roger Buck', 'Jeffrey K. Hollingsworth']
Data Centric Cache Measurement on the Intel ltanium 2 Processor