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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
J. L. Hennessy. Symbolic debugging of optimized code. ACM TOPLAS, 4(3):323–344, July 1982.
High Performance Fortran Forum. High Performance Fortran Language Specification — Version 1.0, January 1993.
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.
Jeffrey K. Hollingsworth, Barton P. Miller, and Jon Cargille. Dynamic program instrumentation for scalable performance tools. In Scalable High Performance Computing Conference, May 1994.
D. Nardini and C. A. Brebbia. A new approach for free vibration analysis using boundary elements. Boundary Element Methods in Engineering, 1982.
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.
Thinking Machines Corporation, Cambridge MA. CM Fortran Reference Manual, January 1991.
Polle T. Zellweger. An interactive high-level debugger for control-flow optimized programs. ACM SIGPLAN Notices, 18(8):159–172, March 1983.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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