skip to main content
10.1145/1687774.1687778acmconferencesArticle/Chapter ViewAbstractPublication PagesscConference Proceedingsconference-collections
extended-abstract

Dynamic compilation for component-based high performance computing

Published: 15 November 2009 Publication History

Abstract

Component-based frameworks for high-performance computing (HPC) are being developed in response to the increasing complexity of HPC software. These frameworks promote the development of clear programming interfaces that allow easy code reuse, distributed development, and inter-language operability. Unfortunately, the decoupled and dynamic nature of component-based applications prevent static compilers from applying optimization across components. Consequently, if components are used at too fine of a granularity they can impose a significant performance overhead -- a serious consequence in the HPC community. Therefore, this paper proposes dynamic compilation as a method for improving performance of component-based HPC applications, which would allow programmers to express programs at the most natural granularity. We introduce a technique called IR annotation in which a high-level intermediate representation (IR) of a program is embedded inside an optimized native executable. This approach leverages the benefits of multiple program representations at the cost of increased code size. The optimized code enables immediate execution at native speed while the IR allows selective dynamic re-compilation if runtime monitoring exposes performance problems. Our experimental results for using IR annotation on the Common Component Architecture (CCA), a component-based HPC framework, show that the program size increase is only about 2.5x. Finally, we propose several ideas that can potentially further reduce the code growth due to IR annotation.

References

[1]
Cca-forum. http://www.cca-forum.org.
[2]
Hpctoolkit. http://hpctoolkit.org.
[3]
A.-R. Adl-Tabatabai, M. Cierniak, G.-Y. Lueh, V. M. Parikh, and J. M. Stichnoth. Fast, effective code generation in a just-in-time java compiler. SIGPLAN Not., 33(5):280--290, 1998.
[4]
V. Bala, E. Duesterwald, and S. Banerjia. Dynamo: a transparent dynamic optimization system. In Proceedings of the ACM SIGPLAN 2000 conference on Programming Language Design and Implementation, pages 1--12, New York, NY, USA, 2000. ACM.
[5]
M. G. Burke, J.-D. Choi, S. Fink, D. Grove, M. Hind, V. Sarkar, M. J. Serrano, V. C. Sreedhar, H. Srinivasan, and J. Whaley. The jalapeno dynamic optimizing compiler for java. In JAVA '99: Proceedings of the ACM 1999 conference on Java Grande, pages 129--141, New York, NY, USA, 1999. ACM.
[6]
C. Chambers and D. Ungar. Customization: optimizing compiler technology for self, a dynamically-typed object-oriented programming language. SIGPLAN Not., 24(7):146--160, 1989.
[7]
T. Dahlgren, T. Epperly, G. Kumfert, and J. Leek. Babel Users' Guide. Lawrence Livermore National Laboratory, November 2007.
[8]
L. P. Deutsch and A. M. Schiffman. Efficient implementation of the smalltalk-80 system. In POPL '84: Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, pages 297--302, New York, NY, USA, 1984. ACM.
[9]
C. Lattner and V. Adve. Llvm: A compilation framework for lifelong program analysis & transformation. In Proceedings of the 2004 International Symposium on Code Generation and Optimization, Palo Alto, California, Mar 2004.
[10]
J. Lu, H. Chen, P.-C. Yew, and W.-C. Hsu. Design and implementation of a lightweight dynamic optimization system. Journal of Instruction-Level Parallelism, 6:1--24, April 2004.
[11]
M. Paleczny, C. Vick, and C. Click. The java hotspottm server compiler. In JVM'01: Proceedings of the JavaTM Virtual Machine Research and Technology Symposium on JavaTM Virtual Machine Research and Technology Symposium, pages 1--1, Berkeley, CA, USA, 2001. USENIX Association.
[12]
R. G. Scarborough and H. G. Kolsky. Improved optimization of fortran object programs. IBM Journal of Research and Development, 24(6):660, Nov 1980.
[13]
T. Suganuma, T. Yasue, M. Kawahito, H. Komatsu, and T. Nakatani. A dynamic optimization framework for a java just-in-time compiler. SIGPLAN Not., 36(11):180--195, 2001.

Cited By

View all

Index Terms

  1. Dynamic compilation for component-based high performance computing

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CBHPC '09: Proceedings of the 2009 Workshop on Component-Based High Performance Computing
    November 2009
    120 pages
    ISBN:9781605587189
    DOI:10.1145/1687774
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 15 November 2009

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Extended-abstract

    Funding Sources

    Conference

    SC '09
    Sponsor:

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 116
      Total Downloads
    • Downloads (Last 12 months)2
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 14 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media