Abstract
The most widely available high performance platforms today are multilevel clusters of multicores. The Glasgow Haskell Compiler (GHC) provides a number of parallel Haskell implementations targeting different parallel architectures. In particular, GHC-SMP supports shared memory, and GHC-GUM supports distributed memory machines. Both implementations use different, but related, runtime environment (RTE) mechanisms. Good performance results can be achieved on shared memory architectures and on networks individually. However, a combination of both, for networks of multicores, is lacking. We present the design and implementation of a new parallel Haskell RTE implementation, GUMSMP, which exploits hierarchical platforms more effectively. It is designed to efficiently combine distributed memory parallelism, using a virtual shared heap over a cluster, with low-overhead shared memory parallelism on the multicores. Key design objectives for realising this system are: asymmetric load balance, effective latency hiding, and mostly passive load distribution. We show that the automatic hierarchical load distribution policies must be carefully tuned to obtain good performance, showing the impact of several policies, including work pre-fetching and favouring inter-node work distribution.We present the initial performance results for this implementation, demonstrating the good scalability of a set of 8 benchmarks on up to 100 cores, and show performance gains of up to 20% compared to GHC-GUM.
Original language | English |
---|---|
Title of host publication | ACM International Conference Proceeding Series |
Publisher | Association for Computing Machinery |
Pages | 37-48 |
Number of pages | 12 |
ISBN (Print) | 9781450329880 |
Publication status | Published - 1 Jan 2013 |
Event | 25th International Symposium on Implementation and Application of Functional Languages - Nijmegen, United Kingdom Duration: 28 Aug 2013 → 30 Aug 2013 |
Conference
Conference | 25th International Symposium on Implementation and Application of Functional Languages |
---|---|
Abbreviated title | IFL 2013 |
Country/Territory | United Kingdom |
City | Nijmegen |
Period | 28/08/13 → 30/08/13 |
Keywords
- Distributed Architectures
- Parallel Haskell
- Virtual Shared Memory
ASJC Scopus subject areas
- Human-Computer Interaction
- Computer Networks and Communications
- Computer Vision and Pattern Recognition
- Software