A methodology for performance analysis of parallel computations with looping constructs

Abstract This paper describes a novel modeling methodology for evaluating the execution of parallel programs containing looping constructs. Our approach employs analytic methods to obtain an estimate of the average execution time of such a program in a distributed, multiple-computer environment. These tools are based on an amalgamation of queuing network theory (used to model physical system characteristics) and graph models of program behavior. To evaluate a complex program, we first decompose it into a number of program segments with “simpler” structures; then analyze each segment independently; and, finally, combine individual results to produce an approximate solution for the whole program. A realistic example is used to illustrate the application of this performance evaluation methodology.

[1]  Gianfranco Balbo,et al.  Combining queueing network and Generalized Stochastic Petri Net models for the analysis of some software blocking phenomena , 1985, IEEE Transactions on Software Engineering.

[2]  Michael K. Molloy,et al.  On the integration of delay and throughput measures in distributed processing models , 1981 .

[3]  Gerald Estrin,et al.  A methodology for the design of digital systems-Supported by SARA at the age of one , 1899, AFIPS National Computer Conference.

[4]  Kishor S. Trivedi,et al.  Analytic Queueing Models for Programs with Internal Concurrency , 1983, IEEE Transactions on Computers.

[5]  David J. Kuck,et al.  A Survey of Parallel Machine Organization and Programming , 1977, CSUR.

[6]  Alexander Thomasian,et al.  Performance Analysis of Task Systems Using a Queueing Network Model , 1985, PNPM.

[7]  James Lyle Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[8]  Donald F. Towsley,et al.  Models for parallel processing within programs: application to CPU: I/O and I/O: I/O overlap , 1978, CACM.

[9]  Kishor S. Trivedi,et al.  Performance and Reliability Analysis Using Directed Acyclic Graphs , 1987, IEEE Transactions on Software Engineering.

[10]  Robert Parry,et al.  National Computer Conference: 4-7 May 1981 McCormick Place, Chicago, USA , 1981, Microprocess. Microsystems.

[11]  Richard M. Karp,et al.  The Organization of Computations for Uniform Recurrence Equations , 1967, JACM.

[12]  L. Richter 1979 International conference on parallel processing , 1980 .

[13]  Alex Kapelnikov,et al.  A Modeling Methodology for the Analysis of Concurrent Systems and Computations , 1989, J. Parallel Distributed Comput..

[14]  William B. Ackerman,et al.  Data Flow Languages , 1899, Computer.

[15]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1987, TOPL.