Advertisement

Lessons Learned from Implementing OMPD: A Debugging Interface for OpenMP

  • Joachim Protze
  • Ignacio LagunaEmail author
  • Dong H. Ahn
  • John Del Signore
  • Ariel Burton
  • Martin Schulz
  • Matthias S. Müller
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9342)

Abstract

With complex codes moving to systems of increasing on-node parallelism using OpenMP, debugging these codes is becoming increasingly challenging. While debuggers can significantly aid programmers, existing ones support OpenMP at a low system-thread level, reducing their effectiveness. The previously published draft for a standard OpenMP debugging interface (OMPD) is supposed to enable the debuggers to raise their debugging abstraction to the conceptual levels of OpenMP by mediating the tools and OpenMP runtime library. In this paper, we present our experiences and the issues that we have found on implementing an OMPD library prototyp for a commonly used OpenMP runtime and a parallel debugger.

Keywords

Runtime System Error Code Parallel Region Target Memory Callback Function 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Allinea Software: Allinea DDT. http://www.allinea.com/products/ddt. Accessed 16 May 2015
  2. 2.
    Cownie, J., Del Signore, J., de Supinski, B.R., Warren, K.: DMPL: an OpenMP DLL debugging interface. In: Voss, M.J. (ed.) WOMPAT 2003. LNCS, vol. 2716, pp. 137–146. Springer, Heidelberg (2003) CrossRefGoogle Scholar
  3. 3.
    Cownie, J., Gropp, W.D.: A standard interface for debugger access to message queue information in MPI. In: Margalef, T., Dongarra, J., Luque, E. (eds.) PVM/MPI 1999. LNCS, vol. 1697, pp. 51–58. Springer, Heidelberg (1999) CrossRefGoogle Scholar
  4. 4.
    Eichenberger, A., et al.: OMPT and OMPD: OpenMP Tools Application Programming Interfaces for Performance Analysis and Debugging. Technical report, OpenMP.org, May 2013. http://openmp.org/mp-documents/ompt-tr.pdf. Accessed 15 May 2015
  5. 5.
    Eichenberger, A., et al.: OpenMP Technical Report 2 on the OMPT Interface. Technical report, OpenMP.org, March 2014. http://openmp.org/mp-documents/ompt-tr2.pdf. Accessed 15 May 2015
  6. 6.
    Rogue Wave Software: TotalView\(\textregistered \) Graphical Debugger (2015). http://www.roguewave.com/products/totalview.aspx. Accessed 16 May 2015
  7. 7.
    Inc., Sun Microsystems. man pages section 3: Threads and realtime library functions. User documentation, May 2002. https://docs.oracle.com/cd/E19683-01/816-0216/816-0216.pdf. Accessed 15 May 2015

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Joachim Protze
    • 1
    • 2
    • 3
  • Ignacio Laguna
    • 3
    Email author
  • Dong H. Ahn
    • 3
  • John Del Signore
    • 4
  • Ariel Burton
    • 4
  • Martin Schulz
    • 3
  • Matthias S. Müller
    • 1
    • 2
  1. 1.RWTH Aachen UniversityAachenGermany
  2. 2.JARA – High-Performance ComputingAachenGermany
  3. 3.Lawrence Livermore National LaboratoryLivermoreUSA
  4. 4.Rogue Wave SoftwareBolderUSA

Personalised recommendations