Abstract
Modern microprocessors provide high performance by exploiting data locality with carefully designed multi-level caches. However, advanced scientific computations have features such as adaptive irregular memory accesses and large data sets that make utilizing caches effectively dificult. Traditional program transformations are frequently inapplicable or insuficient. Exploiting locality for these applications requires compile-time analyses and run-time systems to perform data layout and computation transformations. Run-time systems are needed because many programs are not analyzable statically, but compiler support is still crucial both for inserting interfaces to the run-time system and for directly applying program transformations where possible. Cooperation between the compiler and run-time will be critical for advanced scientific codes. We investigate software support for improving locality for advanced scientific applications on both sequential and parallel machines. We examine issues for both irregular adaptive and dense-matrix codes.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
M. Berger and S. Bokhari. A partitioning strategy for non-uniform problems on multiprocessors. IEEE Transactions on Computers, 37(12):570–580, 1987.
C. Ding and K. Kennedy. Improving cache performance of dynamic applications with computation and data layout transformations. In Proceedings of the SIGPLAN PLDI, Atlanta, May 1999.
H. Han and C.-W. Tseng. Improving locality for adaptive irregular scientific codes. Technical Report CS-TR-4039, Dept. of Computer Science,University of Maryland, College Park, September 1999.
G. Karypis and V. Kumar. A fast and high quality multilevel scheme for partitioning irregular graphs. In Proceedings of the 24th ICPP, Oconomowoc, August 1995.
M. Lam, E. Rothberg, and M. E. Wolf. The cache performance and optimizations of blocked algorithms. In Proceedings of the ASPLOS-IV, SantaClara, April 1991.
G. Rivera and C.-W. Tseng. Data transformations for eliminating conflict misses. In Proceedings of the SIGPLAN PLDI, Montreal, June 1998.
G. Rivera and C.-W. Tseng. Eliminating conflict misses for high performance architectures. In Proceedings of the ICS, Melbourne, July 1998.
G. Rivera and C.-W. Tseng. A comparison of compiler tiling algorithms. In Proceedings of the 8th Conference on Compiler Construction, Amsterdam, March 1999.
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
Han, H., Rivera, G., Tseng, CW. (2000). Compiler and Run-Time Support for Improving Locality in Scientific Codes. In: Carter, L., Ferrante, J. (eds) Languages and Compilers for Parallel Computing. LCPC 1999. Lecture Notes in Computer Science, vol 1863. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44905-1_30
Download citation
DOI: https://doi.org/10.1007/3-540-44905-1_30
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67858-8
Online ISBN: 978-3-540-44905-8
eBook Packages: Springer Book Archive