Next: Introduction

GUM: a portable parallel implementation of Haskell

K Hammond JS Mattson Jr AS Partridge SL Peyton Jones PW Trinder

Department of Computing Science, Glasgow University
Email: {kh,mattson,ap,simonpj,trinder}@dcs.glasgow.ac.uk
Thu Sep 21 15:51:04 BST 1995

Abstract:

GUM is a portable, parallel implementation of the Haskell functional language which has been publicly released with version 0.26 of the Glasgow Haskell Compiler (GHC). GUM is message-based, and portability is facilitated by using the PVM communications-harness available on most multi-processors, including shared-memory and distributed-memory machines. For example GUM is available by FTP for a Sun SPARCserver multiprocessor and for a network of Sun SPARC workstations.

High message-latency in distributed machines is ameliorated by sending messages asynchronously, and by sending large packets of related data in each message. Initial performance figures demonstrate absolute speedups relative to the best sequential compiler technology. To improve the performance of a parallel Haskell program GUM provides tools for monitoring and visualising the behaviour of threads and of PEs during execution.



kh@dcs.st-and.ac.uk
Thu Sep 21 15:49:19 BST 1995