Abstract
We investigate two similar but contrasting parallel functional language designs: Eden and GpH. Both languages use the non-strict functional language Haskell as a core expression language, both are implemented as extensions of the high performance Glasgow Haskell Compiler (GHC), and both implementations are available on the same distributed architecture: a Beowulf cluster. This allows an exceptionally pure comparison of the language design characteristics and their impact on parallel performance.
The comparison is illustrated by two parallel symbolic computation benchmarks which expose differences in the communication, process creation, and work distribution mechanisms employed by Eden and GpH. Our results show that the explicit process model favoured by Eden gives good parallel performance for coarse-grained applications running on the Beowulf cluster. In comparison, the current GpH implementation of implicit parallelism yields poorer absolute speedup for these two applications. Further work is needed to determine whether this difference is an implementation artefact or a consequence of the different models employed in each case, though excessively fine thread granularity appears to be a contributing factor.
Original language | English |
---|---|
Title of host publication | TRENDS IN FUNCTIONAL PROGRAMMING, VOL 2 |
Place of Publication | OXFORD |
Publisher | Intellect Ltd. |
Pages | 39-52 |
Number of pages | 14 |
ISBN (Print) | 1-84150-058-5 |
Publication status | Published - 2000 |