Abstract
Recent research results show that conventional hardware-only cache replacement policies result in unsatisfactory cache utilization because of cache pollution. To overcome this problem, cache hints are introduced to assist cache replacement. Cache hints are used to specify the cache level at which the data is stored after accessing it. This paper present a compiler-assisted cache replacement policy, Optimum Cache Partition (OCP), which can be carried out through cache hints and LRU replacement policy. Presburger arithmetic is used to exactly model the behavior of loop nests under OCP policy. The OCP replacement policy results in plain cache behaviors, and makes cache misses analyzing and optimizing easily and efficiently. OCP replacement policy has been implemented in our compiler test-bed and evaluated on a set of scientific computing benchmarks. Initial results show that our approach is effective on reducing the cache miss rate.
This work was supported by 863 National High Technology Program, grant No. 2002AA1Z2105
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
McKinley, K.S., Temam, O.: Quantifying loop nest locality using spec’95 and the perfect benchmarks. ACM Transactions on Computer Systems (TOCS) 17(4), 288–336 (1999)
Kathail, V., Schlansker, M.S., Rau, B.R.: HPL-PD architecture specification: Version 1.1. Technical Report HPL-93-80 (R.1), Hewlett-Packard (February 2000)
IA-64 Application Developer’s Architecture Guide (May 1999)
Wolf, M.E., Lam, M.S.: A data locality optimizing algorithm. In: Proc. Of SIGPLAN PLDI 1991, Toronto, Ont., pp. 30–44 (June 1991)
Gao, G.R., Sarkar, V., Han, S.: Locality analysis for distributed sharedmemory multiprocesors. In: Sehr, D., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D.A. (eds.) LCPC 1996. LNCS, vol. 1239, Springer, Heidelberg (1997)
Ghosh, S., Martonosi, M., Malik, S.: Cache miss equations: An analytical representation of cache misses. In: Conf. Proc., 1997 Intl. Conf. on Supercomputing, Vienna, Austria, July 1997, pp. 317–324 (1997)
The Trimaran Compiler Research Infrastructure, http://www.trimaran.org
Dinero IV Trace-Driven Uniprocessor Cache Simulator, http://www.cs.wisc.edu/~markhill/DineroIV
Rivera, G., Tseng, C.-W.: Eliminating conflict misses for high performance architectures. In: ACM Internacional Conference on Supercomputing, ICS 1998 (1998)
Jain, P., Devadas, S., Engels, D., Rudolph, L.: Software-assisted replacement mechanisms for embedded systems. In: International Conference on Computer Aided Design, November 2001, pp. 119–126 (2001)
Wang, Z., McKinley, K., Rosenberg, A., Weems, C.: Using the compiler to improve cache replacement decisions. In: PACT 2002 (September 2002)
Yang, H., Govindarajan, R., Gao, G.R., Hu, Z.: Compiler-assisted cache replacement: Problem formulation and performance evaluation. In: Rauchwerger, L. (ed.) LCPC 2003. LNCS, vol. 2958, Springer, Heidelberg (2004)
Beyls, K., D’Hollander, E.H.: Compile-Time Cache Hint Generation for EPIC Architectures. In: Proceedings of the 2nd International Workshop on Explicitly Parallel Instruction Computing (EPIC) Architectures and Compiler Techniques, Istanbul, Turkey (November 2002)
Gannon, D., Jalby, W., Gallivan, K.: Strategies for cache and local memory management by global programming transformation. Journal of Parallel and Distributed Computing 5(5), 587–616 (1988)
Pugh, W.: Counting solutions to Presburger formulas: How and why. ACM SIGPLAN Notices 29(6), 121–134 (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tian, X., Zhao, K., Chen, H., Du, H. (2004). Cache Behavior Analysis of a Compiler-Assisted Cache Replacement Policy. In: Yew, PC., Xue, J. (eds) Advances in Computer Systems Architecture. ACSAC 2004. Lecture Notes in Computer Science, vol 3189. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30102-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-30102-8_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-23003-8
Online ISBN: 978-3-540-30102-8
eBook Packages: Springer Book Archive