A structured and automatic approach to the performance measurement of parallel and distributed programs
Cui‐Qing Yang · Minds at UW (University of Wisconsin) · 1987
We address two major issues in building performance measurement systems for parallel and distributed programs. The first issue is how a measurement system can provide a complete picture about the execution of a program, and how this information should be organized so that users can easily and intuitively access all the data without being inundated with irrelevant details. The second issue is how a measurement tool can supply more information than just performance statistics, and how such information can guide the programmer in locating performance problems and in providing possible ways to make further improvements. Our approach to the first issue involves unifying performance information into a single, regular structure that reflects the organization of the program. We have defined an hierarchical model for the execution of parallel and distributed programs as a framework for the performance measurement. A complete picture of the program's execution can be presented at different levels of detail in the hierarchy. Users are able to maneuver through the hierarchy, concentrating on the spots where the most interesting activities have occurred, and can interactively shift their focus. The approach to the second issue is based upon the development of automatic guidance techniques that can direct users to the location of performance problems in the program. Guidance information from such techniques will not only supply facts about problems in the program, but also provide possible answers to improve its performance. The construction of guidance techniques is facilitated by the regular structure of the program and measurement hierarchy. A performance system, called IPS, has been implemented on the Charlotte distributed operating system as a test of our models and design. An automatic guidance technique--critical path analysis for the execution of distributed programs--is integrated in IPS. Measurement tests on IPS show that the critical path information in conjunction with hierarchically organized performance metrics provide a comprehensive picture of program's execution and help users identify the cause of performance bottlenecks.