The HasPar Performance Evaluation Suite for GPH: a Parallel Non-Strict Functional Language Kevin Hammond 1 David J. King 2 Hans-Wolfgang Loidl 3 ´ Alvaro J. Reb´on Portillo 1 Phil W. Trinder 3 December 17, 1999 Abstract The ultimate purpose of parallel computation is to improve performance by exploit- ing hardware duplication. In order to achieve this improvement, it is essential to have a good understanding of real parallel behaviour. This paper introduces the HasPar in- tegrated suite of performance evaluation tools for Glasgow Parallel Haskell (GpH), a high-performance parallel non-strict functional language. This suite provides a frame- work for assessing and improving parallel program performance that suite has been used successfully on a number of large functional programs. The HasPar suite includes both idealised and realistic simulators for GpH. It also incorporates an instrumented parallel implementation that can be used on a range of architectures including both tightly-coupled multiprocessors and loosely-coupled networks of workstations. An important feature of the tools is that they allow cost to be attributed to the parallel program source using either static or dynamic cost attribution mechanisms, as appropriate. The resulting performance profiles can be visualised in a number of different ways, as illustrated in this paper. 1 Introduction 1.1 Parallel Performance Evaluation Parallelism is typically introduced into a program so as to improve its performance by reducing overall execution time [Qui87]. In order to obtain the best performance, in any other than fully automatic schemes, the programmer must understand and improve the (often complex) parallel behaviour of that program. The purpose of parallel performance evaluation is thus to assist the programmer by providing information about a program’s parallel behaviour that can be used to enhance that behaviour. 1 School of Computer Science, University of St Andrews, UK. Email: {kh,alvaro}@dcs.st-and.ac.uk 2 Motorola Research Labs., Reading, UK. Email: David.King@motorola.com 3 Dept. of Computing and Electrical Engineering, Heriot-Watt University, Edinburgh, UK. Email: {hwloidl,trinder}@cee.hw.ac.uk 1