Results 1 -
2 of
2
Parallel Cost Centre Profiling
- Proc. 1997 Glasgow Workshop on Functional Programming, Ullapool
, 1997
"... Good profiling is a major issue in extracting performance from parallel programs. We report on a novel synthesis of sequential cost-centre profiling and state-of-the-art parallel simulation for the pure functional language Haskell that promises to provide detailed and accurate information about pa ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
Good profiling is a major issue in extracting performance from parallel programs. We report on a novel synthesis of sequential cost-centre profiling and state-of-the-art parallel simulation for the pure functional language Haskell that promises to provide detailed and accurate information about parallel Haskell programs. Exploiting simulation also improves the quality of sequential cost centre profiling, though at a significant performance overhead. 1 Introduction It has become something of a commonplace for us to complain bitterly of the difficulty of understanding the behaviour of parallel functional programs in the presence of lazy evaluation. In order to help overcome this, we have designed a suite of visual profiling and simulation tools, originally aimed specifically at research into granularity issues, but now also aimed at general parallel program development. Unfortunately, it is still a frequent occurrence for some member of our team to be asked to explain the behaviou...
GpH: An Architecture-independent Functional Language
- IEEE Transactions on Software Engineering
, 1998
"... In principle, pure functional languages promise straightforward architecture-independent parallelism. We investigate the validity of this claim in the context of our highly-portable implementation of an implicitly-parallel functional language: the GUM implementation of Glasgow Parallel Haskell (GpH) ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
In principle, pure functional languages promise straightforward architecture-independent parallelism. We investigate the validity of this claim in the context of our highly-portable implementation of an implicitly-parallel functional language: the GUM implementation of Glasgow Parallel Haskell (GpH). We discuss architecture independence at two levels: lowlevel (i.e. the implementation) and high-level (i.e. the programmer). Low-level architecture independence is achieved by chosing a message-passing model for GUM, and implementing it using portable C and a widely-supported message-passing library like PVM. In fact GUM is largely independent of the message-passing library, and has been adapted to use MPI and the CM-5 CMMD libraries as well as PVM. As a result, GUM is easily ported, and is currently available on seven platforms including shared-memory machines, distributed-memory machines, and networks of workstations. We provide indicative measurements of how efficient and effective our...

