Abstract
With the increasing processing power, the latency of the memory hierarchy becomes the stumbling block of many modern computer architectures. In order to speed-up the calculations, different forms of tiling are used to keep data at the fastest cache level. However, conflict misses cannot easily be avoided using the current techniques. In this paper cache remapping is presented as a new way to eliminate conflict as well as capacity and cold misses in regular array computations. The method uses advanced cache hints which can be exploited at compile time. The results on a set of typical examples are very favorable and it is shown that cache remapping is amenable to an efficient compiler implementation.
Research financed by the Flemish government under contracts IWT-SB/991147 and GOA-12.0508.95)
Chapter PDF
References
S. Carr and K. Kennedy. Compiler blockability of numerical algorithms. In Proceedings, Supercomputing’ 92, pages 114–124. IEEE Computer Society Press, November 1992.
S. Coleman and K. McKinley. Tile size selection using cache organization and data layout. In SIGPLAN’95: conference on programming language design and implementation, pages 279–290, June 1995.
S. Ghosh. Cache Miss Equations: Compiler Analysis Framework for Tuning Memory Behaviour. PhD thesis, Princeton University, November 1999.
Intel. IA-64 Application Developer’s Architecture Guide, May 1999.
G. Kane. PA-RISC 2.0 architecture. Prentice Hall, 1996.
M. S. Lam, E. E. Rothberg, and M. E. Wolf. The cache performance and optimizations of blocked algorithms. In Proceedings of the 4th International Conference on Architectural Support for Programming Languages and Operating Systems, Palo Alto, California, pages 63–74, April 1991.
K. Lee. The NAS860 library user’s manual. Technical report, NASA Ames Research Center, Moffett Field, CA, March 1993., 1993.
P. Panda, H. Nakamura, N. Dutt, and A. Nicolau. Augmenting loop tiling with data alignment for improved cache performance. IEEE transactions on computers, 48(2):142–149, Feb 1999.
D. Patterson. A case for intelligent RAM. IEEE Micro, 17(2):34–44, March-April 1997.
C. D. Polychronopoulos. Loop coalesing: A compiler transformation for parallel machines. In International Conference on Parallel Processing, pages 235–242, Pennsylvania, Pa, USA, Aug. 1987. Pennsylvania State Univ. Press.
G. Rivera and C.-W. Tseng. A comparison of compiler tiling algorithms. In 8th International Conference on Compiler Construction (CC’99), March 1999.
S. L. Scott. Synchronization and communication in the T3E multiprocessor. In Proc. ASPLOS VII, Cambridge, MA, Octobe 1996.
O. Temam, E. D. Granston, and W. Jalby. To copy or not to copy: A compile-time technique for assessing when data copying should be used to eliminate cache conflicts. In IEEE, editor, Proceedings, Supercomputing’ 93, pages 410–419, March 1993.
Trimaran. The Trimaran Compiler Research Infrastructure for Instruction Level Parallelism. The Trimaran Consortium, 1998. http://www.trimaran.org.
M. E. Wolf and M. S. Lam. A data locality optimizing algorithm. In Proceedings of the ACM SIGPLAN’ 91 Conference on Programming Language Design and Implementation, pages 30–44, 1991.
Y. Yamada, J. Gyllenhaal, G. Haab, and W. mei Hwu. Data relocation and prefetching for programs with large data sets. In Proceedings of the 27th Annual International Symposium on Microarchitecture, pages 118–127, San Jose, California, Nov. 30-Dec. 2, 1994. ACM SIGMICRO and IEEE Computer Society TC-MICRO.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Beyls, K.E., D’Hollander, E.H. (2000). Cache Remapping to Improve the Performance of Tiled Algorithms. In: Bode, A., Ludwig, T., Karl, W., Wismüller, R. (eds) Euro-Par 2000 Parallel Processing. Euro-Par 2000. Lecture Notes in Computer Science, vol 1900. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44520-X_142
Download citation
DOI: https://doi.org/10.1007/3-540-44520-X_142
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67956-1
Online ISBN: 978-3-540-44520-3
eBook Packages: Springer Book Archive