Approaches to parallel performance prediction

Fred Howell

PhD Thesis, Dept of Computer Science, University of Edinburgh, 1996

The chapters of my thesis are available separately below, in pdf and postscript versions. Unfortunately, the two interesting chapters are only available in postscript because of problems with the pdf generator.

Abstract

Designing parallel programs is both interesting and difficult. The reason for using a parallel machine is to obtain better performance, but the programmer will have little idea of the performance of a program at design time, and will only find out by actually running it. Design decisions have to be be made by guesswork alone.

This thesis explores an alternative by providing data sheets describing the performance of parallel building blocks, and then seeing how they may be used in practice.

The simplest way of using the data sheets is based on a graphing and equation plotting tool. More detailed design information is available from a ``reverse'' profiling technique which adapts standard profiling to generate predictions rather than measurements. The ultimate method for prediction is based on discrete event simulation, which allows modelling of all programs but is the most complex to use.

The methods are compared, and their suitability for different design problems is discussed.

Contents

  1. Introduction (.ps)
  2. Experimental Approach (.ps)
  3. The Performance Characterisation of MPI Functions (.ps only)
  4. Simple Performance Estimates of the Cowichan Problems (.ps)
  5. Reverse Profiling (.ps only)
  6. A Simulation Tool for MPI Performance Prediction (.ps)
  7. Conclusion (.ps)

Appendices

  1. An overview of MPI (.ps)
  2. An example MPI datasheet, title and contents (.ps only) (see also the datasheet web page for html)
  3. References of papers and full text of two (copies of others on request):

Fred Howell
Last modified: Mon Jun 30 14:23:18 BST