Modeling Performance of Parallel Programs

The actual performance of parallel programs is often disappointing, especially in comparison to the peak performance offered by the underlying hardware. There are many sources of performance degradation and understanding these sources is necessary to improve application performance. In this paper we discuss performance modeling, an approach to understanding the performance of parallel systems. We present a survey of current approaches to modeling (both analytical modeling based on system parameters, and structural modeling based on the structure of the program), and propose a combination of these two approaches as a promising direction for new work. This combination is explored by evaluating and proposing improvements to lost cycles analysis, which already contains features from both approaches, and also combines measurement and modeling.

[1]  Samuel T. Chanson,et al.  Performance prediction modeling of multicomputers , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[2]  Vishwani D. Agrawal,et al.  Performance estimation in a massively parallel system , 1990, Proceedings SUPERCOMPUTING '90.

[3]  Lin Sun,et al.  Performance predictions on implicit communication systems , 1994, Proceedings of 1994 6th IEEE Symposium on Parallel and Distributed Processing.

[4]  Ramesh Subramonian,et al.  LogP: towards a realistic model of parallel computation , 1993, PPOPP '93.

[5]  R. T. Dimpsey,et al.  Performance prediction and tuning on a multiprocessor , 1991, [1991] Proceedings. The 18th Annual International Symposium on Computer Architecture.

[6]  Michael A. Driscoll,et al.  Accurate Predictions of Parallel Program Execution Time , 1995, J. Parallel Distributed Comput..

[7]  Ko-Yang Wang Precise compile-time performance prediction for superscalar-based computers , 1994, PLDI '94.

[8]  Peter A. Dinda,et al.  The CMU task parallel program suite , 1994 .

[9]  Anand Sivasubramaniam,et al.  An approach to scalability study of shared memory parallel systems , 1994, SIGMETRICS.

[10]  Pankaj Mehra,et al.  Automated modeling of message-passing programs , 1994, Proceedings of International Workshop on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[11]  Eric A. Brewer,et al.  High-level optimization via automated statistical modeling , 1995, PPOPP '95.

[12]  Ray Jain,et al.  The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling , 1991, Wiley professional computing.

[13]  Graham R. Nudd,et al.  A Layered Approach to Parallel Software Performance Prediction: A Case Study , 1994, EUROSIM.

[14]  Anant Agarwal,et al.  Analyzing multiprocessor cache behavior through data reference modeling , 1993, SIGMETRICS '93.

[15]  Francine Berman,et al.  Predicting the performance of large programs on scalable multicomputers , 1992, Proceedings Scalable High Performance Computing Conference SHPCC-92..

[16]  John H. Reif,et al.  Models and Resource Metrics for Parallel and Distributed Computation , 1994, Parallel Algorithms Appl..

[17]  Mohamed Jamal Zemerly,et al.  A Layered Approach to the Characterisation of Parallel Systems for Performance Prediction , 1993 .

[18]  Thomas Fahringer,et al.  A static parameter based performance prediction tool for parallel programs , 1993, ICS '93.

[19]  M. J. Quinn,et al.  Analytical performance prediction on multicomputers , 1993, Supercomputing '93.

[20]  Mark Crovella,et al.  Performance debugging using parallel performance predicates , 1993, PADD '93.

[21]  Manish Gupta,et al.  Compile-time estimation of communication costs on multicomputers , 1992, Proceedings Sixth International Parallel Processing Symposium.

[22]  F. A. Seiler,et al.  Numerical Recipes in C: The Art of Scientific Computing , 1989 .

[23]  Ravishankar K. Iyer,et al.  Performance prediction and tuning on a multiprocessor , 1991, [1991] Proceedings. The 18th Annual International Symposium on Computer Architecture.

[24]  J. R. Mullins Performance Predictions on Low Permeability Gas Wells , 1971 .

[25]  Satish K. Tripathi,et al.  Performance prediction of parallel computation , 1994, Proceedings of 8th International Parallel Processing Symposium.

[26]  Mark Crovella,et al.  Performance Prediction and Tuning of Parallel Programs , 1994 .

[27]  Sivan Toledo PERFSIM: a tool for automatic performance analysis of data-parallel Fortran programs , 1995, Proceedings Frontiers '95. The Fifth Symposium on the Frontiers of Massively Parallel Computation.

[28]  James B. Sinclair,et al.  ES: a tool for predicting the performance of parallel systems , 1994, Proceedings of International Workshop on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[29]  Hsien-Hsin S. Lee,et al.  A Hierarchical Approach to Modeling and Improving the Performance of Scientific Applications on the KSR1 , 1994, 1994 International Conference on Parallel Processing Vol. 3.

[30]  Arjan J. C. van Gemund,et al.  Performance prediction of parallel processing systems: the PAMELA methodology , 1993, ICS '93.

[31]  Daniel P. Siewiorek,et al.  Performance Prediction and Calibration for a Class of Multiprocessors , 1988, IEEE Trans. Computers.

[32]  Zhiyong Li,et al.  Models and resource metrics for parallel and distributed computation , 1994, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

[33]  Ken Kennedy,et al.  A static performance estimator to guide data partitioning decisions , 1991, PPOPP '91.

[34]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[35]  Ravishankar K. Iyer,et al.  A Measurement-Based Model to Predict the Performance Impact of System Modifications: A Case Study , 1995, IEEE Trans. Parallel Distributed Syst..

[36]  Thomas J. LeBlanc,et al.  Parallel performance prediction using lost cycles analysis , 1994, Proceedings of Supercomputing '94.

[37]  Thomas Fahringer,et al.  Automatic performance prediction to support parallelization of Fortran programs for massively parallel systems , 1992, ICS '92.