Skip to main content

A Runtime Optimization System for OpenMP

  • Conference paper
  • First Online:
OpenMP Shared Memory Parallel Programming (WOMPAT 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2716))

Included in the following conference series:

Abstract

This paper introduces stOMP: a specializing thread-library for OpenMP. Using a combined compile-time and run-time system, stOMP specializes OpenMP parallel regions for frequently-seen values and the configuration of the runtime system. An overview of stOMP is presented as well as motivation for the runtime optimization of OpenMP applications. The overheads incurred by a prototype implementation of stOMP are evaluated on three Spec OpenMP Benchmarks and the EPCC scheduling microbenchmark. The results are encouraging and suggest that there is a large potential for improvement by the runtime optimization of OpenMP applications.

This work is supported in part by the National Science and Engineering Research Council, Bell Canada University Labs, the Connaught Foundation and Dell Canada.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. OpenMP Architecture Review Board. OpenMP Fortran Application Program Interface, V. 2.0, 2002.

    Google Scholar 

  2. OpenMP Architecture Review Board. OpenMP C and C++ Application Program Interface, V. 2.0, 2002.

    Google Scholar 

  3. The Omni OpenMP Compiler. http://phase.etl.go.jp/Omni/, 2003.

  4. Sun Microsystems. The Java HotSpot Performance Engine Architecture. Technical White Paper, http://java.sun.com/products/hotspot/whitepaper.html, April 1999.

  5. Matthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney. Adaptive optimization in the jalapeno jvm. In Proc. of the ACM SIGPLAN 2000 Conf. on Object-Oriented Programming Systems, Languages and Applications, Minneapolis, MN, October 2000.

    Google Scholar 

  6. Standard ECMA-335: Common Language Infrastructure (CLI). http://www.ecma.ch/ecma1/STAND/ecma-335.htm, February 2002.

  7. L. Peter Deutsch and Allan M. Schiffman. Efficient Implementation of the Smalltalk-80 System. In Proc. of the Conf. on Principles of Programming Languages, Salt Lake City, Utah, 1984.

    Google Scholar 

  8. Brian Grant, Matthai Philipose, Markus Mock, Craig Chambers, and Susan J. Eggers. An evaluation of staged run-time optimizations in DyC. In Proc. of the SIGPLAN’99 Conf. on Programming Language Design and Implementation, pages 293–304, Atlanta, GA, May 1999.

    Google Scholar 

  9. Massimiliano Polettto, Wilson C Hsieh, Dawson R Engler, and M. Frans Kaashoek. ’C and tcc: A language and compiler for dynamic code generation. ACM Transactions on Programming Languages and Systems, 21(2):324–369, March 1999.

    Article  Google Scholar 

  10. Renaud Marlet, Charles Consel, and Philippe Boinot. Efficient incremental runtime specialization for free. In Proc. of the SIGPLAN’99 Conf. on Programming Language Design and Implementation, pages 281–292, Atlanta, GA, May 1999.

    Google Scholar 

  11. Markus Mock, Craig Chambers, and Susan Eggers. Calpa: A Tool for Automating Selective Dynamic Compilation. In 33rd Annual Symposium on Microarchitecture, December 2000.

    Google Scholar 

  12. Michael Voss and Rudolf Eigenmann. High-Level Adaptive Program Optimization with ADAPT. In Proc. of PPoPP’01: Principles and Practice of Parallel Programming, Snow Bird, Utah, June 2001.

    Google Scholar 

  13. Vishal Aslot, Max Domeika, Rudolf Eigenmann, Greg Gaertner, Wesley B. Jones, and Bodo Parady. SPEComp: A New Benchmark Suite for Measuring Parallel Computer Performance. In Workshop on OpenMP Applications and Tools (WOMPAT), pages 1–10, July 2001.

    Google Scholar 

  14. J. M. Bull. Measuring Synchronization and Scheduling Overheads in OpenMP. In European Workshop on OpenMP (EWOMP), 1999.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Burcea, M., Voss, M.J. (2003). A Runtime Optimization System for OpenMP. In: Voss, M.J. (eds) OpenMP Shared Memory Parallel Programming. WOMPAT 2003. Lecture Notes in Computer Science, vol 2716. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45009-2_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-45009-2_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-40435-4

  • Online ISBN: 978-3-540-45009-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics