Optimization-Oriented Visualization of Cache Access Behavior

  • Jie Tao
  • Wolfgang Karl
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3515)


Cache performance is regarded as a critical issue that significantly influences the overall performance of a computer system. Hence, optimization with respect to cache behavior forms an important topic in both research and commercial areas. This work aims at helping the user in the task of cache behavior analysis with a comprehensive visualization tool. The resulted cache visualizer is capable of presenting the various aspects of cache accesses, and shows the performance data in a high-level, user-readable way. More specially, it directly leads the user to the data structures where excessive cache misses occur. It then further depicts the reason of theses misses. In addition, it helps the user to decide important parameters concerning some optimization techniques, e.g. padding stride and size of cache blocks. Examples of initial optimization based on the visualizer have proven the feasibility of this visualization tool.


Visualization Tool Cache Line Graphical View Cache Block Cache Performance 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Ding, C., Kennedy, K.: Improving Cache Performance in Dynamic Applications through Data and Computation Reorganization at Run Time. ACM SIGPLAN Notices 34(5), 229–241 (1999)CrossRefGoogle Scholar
  2. 2.
    Douglas, C.C., Hu, J., Kowarschik, M., Rüde, U., Weiss, C.: Cache Optimization for Structured and Unstructured Grid Multigrid. Electronic Transaction on Numerical Analysis 10, 21–40 (2000)zbMATHGoogle Scholar
  3. 3.
    Intel Corporation. Intel VTune Performance Analyzer, Available at
  4. 4.
    Megiddo, N., Sarkar, V.: Optimal Weighted Loop Fusion for Parallel Programs. In: Proceedings of the 9th Annual ACM Symposium on Parallel Algorithms and Architectures, New York, June 1997, pp. 282–291 (1997)Google Scholar
  5. 5.
    Park, J., Penner, M., Prasanna, V.: Optimizing Graph Algorithms for Improved Cache Performance. In: Proceedings of the 16th International Parallel and Distributed Processing Symposium, April 2002, pp. 32–33 (2002)Google Scholar
  6. 6.
    Rivera, G., Tseng, C.W.: Data Transformations for Eliminating Conflict Misses. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, Montreal, Canada, June 1998, pp. 38–49 (1998)Google Scholar
  7. 7.
    Tao, J., Karl, W.: CacheIn: A Toolset for Comprehensive Cache Inspection. In: Proceedings of ICCS 2005 (May 2005)Google Scholar
  8. 8.
    van der Deijl, E., Kanbier, G., Temam, O., Granston, E.: A cache visualization tool. Computer 30(7), 71–78 (1997)CrossRefGoogle Scholar
  9. 9.
    Yu, Y., Beyls, K., D’Hollander, E.: Visualizing the Impact of the Cache on Program Execution. In: Proceedings of the fifth International Conference on Information Visualization, July 2001, pp. 336–341 (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Jie Tao
    • 1
  • Wolfgang Karl
    • 1
  1. 1.Institut für Rechnerentwurf und FehlertoleranzUniversität Karlsruhe (TH)KarlsruheGermany

Personalised recommendations