Skip to main content

Dynamic Analysis to Support Program Development with the Textually Aligned Property for OpenSHMEM Collectives

  • Conference paper
  • First Online:
OpenSHMEM and Related Technologies. Experiences, Implementations, and Technologies (OpenSHMEM 2014)

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

Included in the following conference series:

Abstract

The development of correct high performance computing applications is challenged by software defects that result from parallel programming. We present an automatic tool that provides novel correctness capabilities for application developers of OpenSHMEM applications. These applications follow a Single Program Multiple Data (SPMD) model of parallel programming. A strict form of SPMD programming requires that certain types of operations are textually aligned, i.e., they need to be called from the same source code line in every process. This paper proposes and demonstrates run-time checks that assert such behavior for OpenSHMEM collective communication calls. The resulting tool helps to check program consistency in an automatic and scalable fashion. We introduce the types of checks that we cover and include strict checks that help application developers to detect deviations from expected program behavior. Further, we discuss how we can utilize a parallel tool infrastructure to achieve a scalable and maintainable implementation for these checks. Finally, we discuss an extension of our checks towards further types of OpenSHMEM operations.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 34.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 44.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

Similar content being viewed by others

Notes

  1. 1.

    We replace the call stack information with a numeric identifier as to reuse information on known call stacks.

References

  1. Buck, B., Hollingsworth, J.K.: An API for runtime code patching. Int. J. High Perform. Comput. Appl. 14(4), 317–329 (2000)

    Article  Google Scholar 

  2. Consortium, T.G.: GASPI: Global Address Space Programming Interface - Specification of a PGAS API for communication, version 1.01. Technical report (2013)

    Google Scholar 

  3. Falzone, C., Chan, A., Lusk, E.L., Gropp, W.: A portable method for finding user errors in the usage of MPI collective operations. Int. J. High Perform. Comput. Appl. 21(2), 155–165 (2007)

    Article  Google Scholar 

  4. Hilbrich, T., Hänsel, F., Schulz, M., de Supinski, B.R., Müller, M.S., Nagel, W.E., Protze, J.: Runtime MPI collective checking with tree-based overlay networks. In: Proceedings of the 20th European MPI Users’ Group Meeting, EuroMPI 2013, pp. 129–134. ACM New York (2013)

    Google Scholar 

  5. Hilbrich, T., Müller, M.S., de Supinski, B.R., Schulz, M., Nagel, W.E.: GTI: A generic tools infrastructure for event-based tools in parallel systems. In: Proceedings of the 2012 IEEE 26th International Parallel and Distributed Processing Symposium, IPDPS 2012, pp. 1364–1375. IEEE Computer Society Washington, DC (2012)

    Google Scholar 

  6. Hilbrich, T., Müller, M.S., Schulz, M., de Supinski, B.R.: Order preserving event aggregation in TBONs. In: Cotronis, Y., Danalis, A., Nikolopoulos, D.S., Dongarra, J. (eds.) EuroMPI 2011. LNCS, vol. 6960, pp. 19–28. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  7. Kamil, A., Yelick, K.: Enforcing textual alignment of collectives using dynamic checks. In: Gao, G.R., Pollock, L.L., Cavazos, J., Li, X. (eds.) LCPC 2009. LNCS, vol. 5898, pp. 368–382. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  8. Message Passing Interface Forum. MPI: A Message-Passing Interface Standard, Version 3.1. (2015). http://www.mpi-forum.org/docs/mpi-3.1/mpi31-report.pdf. Accessed 19 June 2015

  9. Pophale, S., Hernandez, O., Chapman, B.: Static Analysis for unaligned collective synchronization matching for OpenSHMEM. In: Proceedings of the 7th International Conference on PGAS Models, pp. 231–336. The University of Edinburgh, Edinburgh (2014)

    Google Scholar 

  10. Roth, P.C., Arnold, D.C., Miller, B.P.: MRNet: A software-based multicast/reduction network for scalable tools. In: Proceedings of the 2003 ACM/IEEE Conference on Supercomputing, SC 2003, New York. ACM (2003)

    Google Scholar 

  11. Träff, J.L., Worringen, J.: Verifying collective MPI calls. In: Kranzlmüller, D., Kacsuk, P., Dongarra, J. (eds.) EuroPVM/MPI 2004. LNCS, vol. 3241, pp. 18–27. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  12. openshmem.org. OpenSHMEM Application Programming Interface v1.2, 04 (2015)

    Google Scholar 

  13. Yelick, K., Semenzato, L., Pike, G., Miyamoto, C., Liblit, B., Krishnamurthy, A., Hilfinger, P., Graham, S., Gay, D., Colella, P., Aiken, A.: Titanium: a high-performance Java dialect. Concur.: Pract. Exp. 10(11–13), 825–836 (1998)

    Article  Google Scholar 

  14. Zhang, Y., Duesterwald, E.: Barrier matching for programs with textually unaligned barriers. In: Proceedings of the 12th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2007, pp. 194–204. ACM, New York (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andreas Knüpfer .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Knüpfer, A., Hilbrich, T., Protze, J., Schuchart, J. (2015). Dynamic Analysis to Support Program Development with the Textually Aligned Property for OpenSHMEM Collectives. In: Gorentla Venkata, M., Shamis, P., Imam, N., Lopez, M. (eds) OpenSHMEM and Related Technologies. Experiences, Implementations, and Technologies. OpenSHMEM 2014. Lecture Notes in Computer Science(), vol 9397. Springer, Cham. https://doi.org/10.1007/978-3-319-26428-8_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26428-8_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26427-1

  • Online ISBN: 978-3-319-26428-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics