Abstract
The goal of this work is a systematic approach to compiler optimization for simultaneously optimizing across multiple levels of the memory hierarchy. Our approach combines compiler models and heuristics with guided empirical search to take advantage of their complementary strengths. The models and heuristics limit the search to a small number of candidate implementations, and the empirical results provide accurate feedback information to the compiler. In previous work, we propose a compiler algorithm for deriving a set of parameterized solutions, followed by a model-guided empirical search to determine the best integer parameter values and select the best overall solution. This paper focuses on formalizing the process of deriving parameter values, which is a multi-variable optimization problem, and considers the role of AI search techniques in deriving a systematic framework for the search.
This work has been supported by NSF grants ACI-0204040 and CSR-0509517.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Chen, C., Chame, J., Hall, M.W.: Combining models and guided empirical search to optimize for multiple levels of the memory hierarchy. In: Proc. of the International Symposium on Code Generation and Optimization (March 2005)
Cooper, K.D., Schielke, P.J., Subramanian, D.: Optimizing for reduced code space using genetic algorithms. In: Proc. of the Workshop on Languages, Compilers, and Tools for Embedded Systems (May 1999)
Frigo, M.: A fast Fourier transform compiler. In: Proc. of the Conference on Programming Language Design and Implementation (May 1999)
Nilsson, N.J.: Artificial Intelligence: A New Synthesis. Morgan Kaufman, San Francisco (1998)
Stephenson, M., Amarasinghe, S., Rinard, M., O’Reilly, U.: Meta optimization: Improving compiler heuristics with machine learning. In: Proc. of the Conference on Programming Language Design and Implementation (June 2003)
Vera, X., Abella, J., González, A., Llosa, J.: Optimizing program locality through CMEs and GAs. In: Proc. of the International Conference on Parallel Architectures and Compilation Techniques (September 2003)
Whaley, R.C., Petitet, A., Dongarra, J.J.: Automated empirical optimization of software and the ATLAS project. Parallel Computing 27(1-2), 3–35 (2001)
Yotov, K., Li, X., Ren, G., Garzaran, M., Padua, D., Pingali, K., Stodghill, P.: Is search really necessary to generate high-performance BLAS? Proceedings of the IEEE 93(2), 358–386 (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chen, C., Chame, J., Hall, M., Lerman, K. (2006). A Systematic Approach to Model-Guided Empirical Search for Memory Hierarchy Optimization. In: Ayguadé, E., Baumgartner, G., Ramanujam, J., Sadayappan, P. (eds) Languages and Compilers for Parallel Computing. LCPC 2005. Lecture Notes in Computer Science, vol 4339. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69330-7_30
Download citation
DOI: https://doi.org/10.1007/978-3-540-69330-7_30
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69329-1
Online ISBN: 978-3-540-69330-7
eBook Packages: Computer ScienceComputer Science (R0)