Skip to main content

Towards an Error Model for OpenMP

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6132))

Abstract

OpenMP lacks essential features for developing mission-critical software. In particular, it has no support for detecting and handling errors or even a concept of them. In this paper, the OpenMP Error Model Subcommittee reports on solutions under consideration for this major omission. We identify issues with the current OpenMP specification and propose a path to extend OpenMP with error-handling capabilities. We add a construct that cleanly shuts down parallel regions as a first step. We then discuss two orthogonal proposals that extend OpenMP with features to handle system-level and user-defined errors.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Compaq Computer Corporation. Compaq Fortran – Language Reference Manual (September 1999); Order number AA-Q66SD-TK

    Google Scholar 

  2. Danaher, J.S., Angelina Lee, I.-T., Leiserson, C.E.: Programming with Exceptions in JCilk. Science of Computer Programming 63(2), 147–171 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  3. Duran, A., Ferrer, R., Costa, J.J., Gonzàlez, M., Martorell, X., Ayguadé, E., Labarta, J.: A Proposal for Error Handling in OpenMP. Intl. Journal of Parallel Programming 35(4), 393–416 (2007)

    Article  MATH  Google Scholar 

  4. Becker, P. (ed.): Working Draft: Standard for Programming Language C++ (November 2009); Document number N3000

    Google Scholar 

  5. Sutter, H.: Interrupt Politely. Technical report (April 2008)

    Google Scholar 

  6. IEEE. Threads Extension for Portable Operating Systems (Draft 6) (February 1992); Document P1003.4a/D6

    Google Scholar 

  7. Intel Corporation. Intel Threading Building Blocks Reference Manual. Technical report, Document number 315415-003US (July 2009)

    Google Scholar 

  8. Issarny, V.: An Exception Handling Model for Parallel Programming and its Verification. In: Proc. of the Conf. on Software for Citical Systems, New Orleans, LA, USA, December 1991, pp. 92–100 (1991)

    Google Scholar 

  9. Klemm, M., Veldema, R., Bezold, M., Philippsen, M.: A Proposal for OpenMP for Java. In: Proc. of the Intl. Workshop on OpenMP, Reims, France (June 2006)

    Google Scholar 

  10. Larus, J.R., Rajwar, R.: Transactional Memory (Synthesis Lectures on Computer Architecture). Morgan & Claypool Publishers, San Francisco (January 2007)

    Google Scholar 

  11. Milovanović, M., Ferrer, R., Unsal, O., Cristal, A., Martorell, X., Ayguadé, E., Labarta, J., Valero, M.: Transactional Memory and OpenMP. In: Chapman, B., Zheng, W., Gao, G.R., Sato, M., Ayguadé, E., Wang, D. (eds.) IWOMP 2007. LNCS, vol. 4935, pp. 37–53. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Forum, M.P.I.: MPI: Extensions to the Message-passing Interface, Version 2.2. Technical report, MPI Forum (September 2009)

    Google Scholar 

  13. Oaks, S., Wong, H.: Java Threads, 3rd edn. O’Reilly, Sebastopol (2004)

    Google Scholar 

  14. OpenMP ARB. OpenMP Application Program Interface, v. 3.0 (May 2008)

    Google Scholar 

  15. Süß, M., Leopold, C.: Implementing irregular parallel algorithms with openMP. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 635–644. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  16. Sommerville, I.: Software Engineering, 8th edn. Pearson Education, Ltd., Harlow (April 2007)

    Google Scholar 

  17. Stoughton, N.: POSIX Liaison Report, Document number N2536 (February 2008)

    Google Scholar 

  18. Tazuneki, S., Yoshida, T.: Concurrent Exception Handling in a Distributed Object-Oriented Computing Environment. In: Proc. of the 7th Intl. Conf. on Parallel and Distributed Systems Workshops, Iwate, Japan, July 2000, pp. 75–82 (2000)

    Google Scholar 

  19. The Open Group. The Open Group Base Specifications Issue 7 (December 2008); IEEE Std 1003.1-2008 and POSIX.1

    Google Scholar 

  20. Xu, J., Romanovsky, A., Randell, B.: Concurrent Exception Handling and Resolution in Distributed Object Systems. IEEE Transactions on Parallel and Distributed Systems 11(10), 1019–1032 (2000)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wong, M. et al. (2010). Towards an Error Model for OpenMP. In: Sato, M., Hanawa, T., Müller, M.S., Chapman, B.M., de Supinski, B.R. (eds) Beyond Loop Level Parallelism in OpenMP: Accelerators, Tasking and More. IWOMP 2010. Lecture Notes in Computer Science, vol 6132. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13217-9_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-13217-9_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-13216-2

  • Online ISBN: 978-3-642-13217-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics