Abstract
We present a flexible skeleton for implementing distributed work pools in our parallel functional language Eden. The skeleton manages a pool of tasks (work pool) in a distributed manner using a demanddriven work stealing approach for load balancing. All coordination is done locally within the worker processes. The latter are arranged in a ring topology and exchange additional channels to shortcut communication paths. The skeleton is suited for different types of algorithms, namely simple data parallel ones and standard tree search algorithms like backtracking, and using a global state as needed for branch-and-bound. Runtime experiments reveal a stable runtime behaviour for the different algorithm classes as illustrated by activity profiles (timeline diagrams). Acceptable speedups can be achieved with low effort.
Original language | English |
---|---|
Title of host publication | Functional and Logic Programming : 10th International Symposium, FLOPS 2010, Sendai, Japan, April 19-21, 2010. Proceedings |
Editors | Matthias Blume, Naoki Kobayashi, Germán Vidal |
Number of pages | 17 |
Publisher | Springer |
Publication date | 2010 |
Pages | 337-353 |
ISBN (Print) | 978-3-642-12250-7 |
ISBN (Electronic) | 978-3-642-12251-4 |
DOIs | |
Publication status | Published - 2010 |
Event | 10th International Symposium on Functional and Logic Programming - Sendai, Japan Duration: 19 Apr 2010 → 21 Apr 2010 Conference number: 10 |
Conference
Conference | 10th International Symposium on Functional and Logic Programming |
---|---|
Number | 10 |
Country/Territory | Japan |
City | Sendai |
Period | 19/04/2010 → 21/04/2010 |
Series | Lecture notes in computer science |
---|---|
Volume | 6009 |
ISSN | 0302-9743 |