Abstract
The visualization tool rdvis is presented which aims at helping the programmer to find program transformations to improve temporal data locality. We present a number of locality metrics that capture the necessary information. Based on a cluster analysis of basic block vectors, the tool gives strong hints on which program transformations are needed. The visualizer allowed us to find the necessary transformations for three SPEC2000 programs in just a few minutes. After performing these transformations, the programs run 3 times faster on average on a number of different platforms.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
Berg, E., Hagersten, E.: Sip: Performance tuning through source code interdependence. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 177–186. Springer, Heidelberg (2002)
Beyls, K., D’Hollander, E.: Platform-independent cache optimization by pinpointing low-locality reuse. In: Bubak, M., van Albada, G.D., Sloot, P.M.A., Dongarra, J. (eds.) ICCS 2004. LNCS, vol. 3038, pp. 448–455. Springer, Heidelberg (2004)
Beyls, K., D’Hollander, E.H.: Reuse distance as a metric for cache behavior. In: Proceedings of PDCS 2001, August 2001, pp. 617–662 (2001)
Bosch, R., Stolte, C., et al.: Rivet: A flexible environment for computer systems visualization. Computer Graphics-US 34(1), 68–73 (2000)
Cantin, J.F., Hill, M.D.: Cache performance for selected SPEC CPU2000 benchmarks. Computer Architecture News (CAN) (September 2001)
Ding, C., Zhong, Y.: Predicting whole-program locality through reuse distance analysis. In: PLDI 2003. ACM SIGPLAN Notices (2003)
Ghosh, S.: Cache Miss Equations: Compiler Analysis Framework for Tuning Memory Behaviour. PhD thesis, Princeton University (November 1999)
Goldberg, A., Hennessy, J.: Mtool: An integrated system for performance debugging shared memory multiprocessor applications. IEEE Transactions on Parallel and Distributed Systems 4(1), 28–40 (1993)
Jain, A.K., Murty, M.N., Flynn, P.J.: Data clustering: a review. ACM Comput. Surv. 31(3), 264–323 (1999)
Lebeck, A.R., Wood, D.A.: Cache profiling and the SPEC benchmarks: A case study. IEEE Computer 27(10), 15–26 (1994)
Martonosi, M., Gupta, A., Anderson, T.: Tuning memory performance in sequential and parallel programs. IEEE Computer (April 1995)
McKinley, K.S., Carr, S., Tseng, C.-W.: Improving data locality with loop transformations. ACM Transactions on Programming Languages and Systems 18(4), 424–453 (1996)
Mellor-Crummey, J., Flwler, R., et al.: HPCView: a tool for top-down analysis of node performance. The Journal of Supercomputing 23, 81–104 (2002)
Sherwood, T., Perelman, E., Hamerly, G., Calder, B.: Automatically characterizing large scale program behavior. ASPLOS, SIGPLAN Notices 37(10), 45–57 (2002)
Vanderdeijl, E., Temam, O., Granston, E., Kanbier, G.: The cache visualization tool. IEEE Computer 30(7), 71 (1997)
Weidendorfer, J., Kowarschik, M., Trinitis, C.: A tool suite for simulation based analysis of memory access behavior. In: Bubak, M., van Albada, G.D., Sloot, P.M.A., Dongarra, J. (eds.) ICCS 2004. LNCS, vol. 3038, pp. 440–447. Springer, Heidelberg (2004)
Yu, Y., Beyls, K., D’Hollander, E.: Visualizing the impact of cache on the program execution. In: Information Visualization 2001, pp. 336–341 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Beyls, K., D’Hollander, E.H., Vandeputte, F. (2005). RDVIS: A Tool that Visualizes the Causes of Low Locality and Hints Program Optimizations. In: Sunderam, V.S., van Albada, G.D., Sloot, P.M.A., Dongarra, J.J. (eds) Computational Science – ICCS 2005. ICCS 2005. Lecture Notes in Computer Science, vol 3515. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11428848_21
Download citation
DOI: https://doi.org/10.1007/11428848_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26043-1
Online ISBN: 978-3-540-32114-9
eBook Packages: Computer ScienceComputer Science (R0)