Advertisement

An Effective Framework of Program Optimization for High Performance Computing

  • Pingjing Lu
  • Bao Li
  • Zhengbin Pang
  • Ying Zhang
  • Shaogang Wang
  • Jinbo Xu
  • Yan Liu
Part of the Communications in Computer and Information Science book series (CCIS, volume 396)

Abstract

The increasing complexity of modern architectures and memory models challenges the design of optimizing compilers. It is mandatory to perform several optimizing transformations of the original program to exploit the machine to its best, especially for scientific, computational intensive codes. Aiming at investigating the best transformation sequence and the best transformation parameters simultaneously, this paper combines polyhedral model and empirical search to create a powerful optimization framework that is capable of fully automated non-parametric transformations and automatic parameter search. The framework employs polyhedral model to facilitate the search of non-parametric code transformation composition, and designs uses Genetic Algorithms to find the optimal parameters. The framework is demonstrated on three typical computational kernels for code transformations to achieve performance that greatly exceeds the native compiler, and is significantly better than state-of-the-art polyhedral model based loop transformations and iterative compilation, generating efficient code on complex loop nests.

Keywords

program optimization loop transformation polyhedral model empirical search 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Fursin, G.: Iterative Compilation and Performance Prediction for Numerical Applications. Ph.D. Thesis, School of Informatics, The University of Edinburgh, pp. 67–82 (2005)Google Scholar
  2. 2.
    Ananta, T., Chun, C., et al.: Scalable Autotuning Framework for Compiler Optimization. In: Proceedings of the IEEE IPDPS 2009, pp. 1–12 (2009)Google Scholar
  3. 3.
    Feautrier, P.: LCPC, Keynote Speech II: The Polytope Model Past, Present, Future. In: Proceedings of the 22nd International Workshop on Languages and Compilers for Parallel Computing, pp. 4–5 (2009)Google Scholar
  4. 4.
    Sid, T., Denis, B.: On the Decidability of Phase Ordering Problem in Optimizing Compilation. In: Proceedings of the International Conference on Computing Frontiers, pp. 147–156 (2006)Google Scholar
  5. 5.
    Louis, P., Cedric, B., Albert, C., Nicolas, V.: Iterative optimization in the polyhedral model: Part I, one-dimensional time. In: Proceedings of ACM Conf. on Code Generation and Optimization, pp. 144–156 (2007)Google Scholar
  6. 6.
    Louis, P., Cedric, B., Albert, C., Nicolas, V.: Iterative optimization in the polyhedral model: Part II, multidimensional time. In: Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 90–100 (2008)Google Scholar
  7. 7.
    Sylvain, G., Nicolas, V., Cedric, B., Albert, C., David, P., March, S., Olivier, T.: Semi-automatic composition of loop transformations for deep parallelism and memory hierarchies. Int. J. of Parallel Programming. 34, 261–317 (2006)CrossRefzbMATHGoogle Scholar
  8. 8.
    Jaume, A., Antonio, G., Josep, L., et al.: Near-Optimal Loop Tiling by means of Cache Miss Equations and Genetic Algorithms. In: Proceedings of Workshop on Compile/Runtime Techniques for Parallel Computing, pp. 568–580 (2002)Google Scholar
  9. 9.
    Chun, C., Jacqueline, C., Mary, H.: CHiLL: A Framework for Composing High-Level Loop Transformations. Technical report, University of Southern California (2008)Google Scholar
  10. 10.
    Kelly, W., Pugh, W.: A framework for unifying reordering transformations. Tech report, College Park, MD, USA, CS-TR-2995, pp. 1–23 (1993)Google Scholar
  11. 11.
    Bondhugula, U., Hartono, A., Ramanujam, J., Sadayappan, P.: A practical automatic polyhedral program optimization system. In: Proceedings of the 2008 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 101–113 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Pingjing Lu
    • 1
  • Bao Li
    • 1
  • Zhengbin Pang
    • 1
  • Ying Zhang
    • 1
  • Shaogang Wang
    • 1
  • Jinbo Xu
    • 1
  • Yan Liu
    • 1
  1. 1.School of ComputerNational University of Defense TechnologyChangshaChina

Personalised recommendations