Abstract
In this article, we present an optimization parameter selection framework based on limited execution and genetic algorithm. In this framework, the parameter selection problem is transformed into a combinatorial minimization problem. We first perform reduction transformation to reduce the program’s runtime while maintaining its relative performance as regard to different parameter vectors. Then we search for the near-optimal optimization parameter vector based on the reduced program’s real execution time. The search engine is guided by genetic algorithm, which converges to near-optimal solution quickly. The reduction transformation reduces the time to evaluate the quality of each parameter vector. And the genetic algorithm reduces the number of candidate parameter vectors evaluated. This makes execution-driven optimization parameter search practical. Our experiments for 5 scientific applications on 3 different platforms suggest that our approach can find excellent optimization parameters in reasonable time. It obtains highly architecture specific optimizations in an architecture independent manner and can solve nearly all combined optimization parameter selection problems.
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
Heydemann, K., et al.: Global Trade-off between Code Size and Performance for Loop Unrolling on VLIW Architectures (2001)
Jiménez, M., et al.: Register tiling in nonrectangular iteration spaces. ACM Transactions on Programming Languages and Systems (TOPLAS) 24(4), 409–453 (2002)
Lam, M.S., et al.: The Cache Performance and Optimizations of Blocked Algorithms. In: Proceedings of the Fourth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-IV), Santa Clara, pp. 63–74 (1991)
Abella, J., et al.: Near-Optimal Loop Tiling by means of Cache Miss Equations and Genetic Algorithms. In: Workshop on Compile/Runtime Techniques for Parallel Computing, Vancouver, BC, Canada (2002)
Hogstedt, K., Carter, L., Ferrante, J.: Selecting tile shape for minimal execution time. In: Symposium on Parallel Algorithms and Architectures, pp. 201–211 (1999)
Sarkar, V.: Optimized Unrolling of Nested Loops In: ICS 2000, Santa Fe, USA, pp. 153– 166 (2000)
Tseng, C.-W.: Software Support For Improving Locality in Advanced Scientific Codes. Technical Report CS-TR-4168, Dept. of Computer Science, University of Maryland (2000)
Parello, D.: On Increasing Architecture Awareness in Program Optimizations to Bridge the Gap between Peak and Sustained Processor Performance – C Matrix-Multiply Revisited, SC 2002 (2002)
Kisuki, T., et al.: Incorporating cache models in iterative compilation for combined tiling and unrolling, Technical Report 2000-10, LIACS, Leiden University (2000)
Fournier, N.G.: Enhancement of an Evolutionary Optimizing Compiler, Ph.D Thesis, Department of Computer Science, University of Manchester (1999)
Bambha, N.K., Bhattacharyya, S.S.: A Joint Power/Performance Optimization Algorithm for Multiprocessor Systems using a Period Graph Construct. In: ISSS 2000, Madrid, Spain, pp. 91–99 (2000)
Chen, Y., et al.: Automatic parallel I/O performance optimization using Genetic Algorithms. In: Proceedings of the Seventh IEEE International Symposium on High Performance Distributed Computing, Chicago, Illinois, pp. 155–162 (1998)
Wang, X., Cao, L.: Genetic Algorithm: Theories, Applications and Software Implementation. Xi’an Jiaotong University Press, Xi’an (2002)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Che, Y., Wang, Z., Li, X. (2003). Optimization Parameter Selection by Means of Limited Execution and Genetic Algorithms. In: Zhou, X., Xu, M., Jähnichen, S., Cao, J. (eds) Advanced Parallel Processing Technologies. APPT 2003. Lecture Notes in Computer Science, vol 2834. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39425-9_28
Download citation
DOI: https://doi.org/10.1007/978-3-540-39425-9_28
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20054-3
Online ISBN: 978-3-540-39425-9
eBook Packages: Springer Book Archive