Skip to main content

A Performance Tool for High-Level Parallel Programming Languages

  • Conference paper
Programming Environments for Massively Parallel Distributed Systems

Part of the book series: Monte Verità ((MV))

Abstract

Users of high-level parallel programming languages require accurate performance information that is relevant to their source code. Furthermore, when their programs experience performance problems at the lowest levels of their hardware and software systems, programmers need to be able to peel back layers of abstraction to examine low-level problems while maintaining references to the high-level source code that ultimately caused the problem. In this paper, we present NV, a model for the explanation of performance information for programs built on multiple levels of abstraction. In NV, a level of abstraction includes a collection of nouns (code and data objects), verbs (activities), and performance information measured for the nouns and verbs. Performance information is mapped from level to level to maintain the relationships between low-level activities and high-level code, even when such relationships are implicit.

We have used the NV model to build ParaMap, a performance tool for the CM Fortran language that has, in practice, guided us to substantial improvements in real CM Fortran applications. We describe the design and implementation of our tool and show how its simple tabular and graphical performance displays helped us to find performance problems in two applications. In each case, we found that performance information at all levels was most useful when related to parallel CM Fortran arrays, and that we could subsequently reduce each application’s execution time by more than half.

This research was supported in part by Department of Energy grant DE-FG02-93ER25176, Office of Naval Research grant N00014-89-J-1222, and National Science Foundation grants CCR-9100968 and CDA-9024618.

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.

References

  1. J. L. Hennessy. Symbolic debugging of optimized code. ACM TOPLAS, 4(3):323–344, July 1982.

    Article  MATH  Google Scholar 

  2. High Performance Fortran Forum. High Performance Fortran Language Specification — Version 1.0, January 1993.

    Google Scholar 

  3. Jeffrey K. Hollingsworth and Barton P. Miller. Dynamic control of performance monitoring on large scale parallel systems. In 7th ACM International Conference on Supercomputing, pages 185–194, July 1993.

    Google Scholar 

  4. Jeffrey K. Hollingsworth, Barton P. Miller, and Jon Cargille. Dynamic program instrumentation for scalable performance tools. In Scalable High Performance Computing Conference, May 1994.

    Google Scholar 

  5. D. Nardini and C. A. Brebbia. A new approach for free vibration analysis using boundary elements. Boundary Element Methods in Engineering, 1982.

    Google Scholar 

  6. Steve Sistare, Don Allen, Rich Bowker, Karen Jourdenais, Josh Simons, and Rich Title. Data visualization and performance analysis in the Prism programming environment. In Programming Environments for Parallel Computing, pages 37–52. North-Holland, 1992.

    Google Scholar 

  7. Thinking Machines Corporation, Cambridge MA. CM Fortran Reference Manual, January 1991.

    Google Scholar 

  8. Polle T. Zellweger. An interactive high-level debugger for control-flow optimized programs. ACM SIGPLAN Notices, 18(8):159–172, March 1983.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer Basel AG

About this paper

Cite this paper

Bruce Irvin, R., Miller, B.P. (1994). A Performance Tool for High-Level Parallel Programming Languages. In: Decker, K.M., Rehmann, R.M. (eds) Programming Environments for Massively Parallel Distributed Systems. Monte Verità. Birkhäuser, Basel. https://doi.org/10.1007/978-3-0348-8534-8_30

Download citation

  • DOI: https://doi.org/10.1007/978-3-0348-8534-8_30

  • Publisher Name: Birkhäuser, Basel

  • Print ISBN: 978-3-0348-9668-9

  • Online ISBN: 978-3-0348-8534-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics