This paper provides an assessment of high-level parallel programming models for multi-core programming by implementing two versions of the n-body problem. We compare three different parallel programming models on the basis of parallel Haskell, differing in the ways how potential parallelism is identified and managed. We assess the performance of each implementation, discuss the sequential and parallel tuning steps leading to the final versions and draw general conclusions on the suitability of high-level parallel programming models for multi-core programming. We achieve speed-ups of up to 7.2 for the all-pairs algorithm and up to 6.5 for the Barnes-Hut algorithm on an 8-core machine. Copyright (c) 2013 John Wiley & Sons, Ltd.
|Number of pages||33|
|Journal||Concurrency and Computation: Practice and Experience|
|Early online date||11 Jul 2013|
|Publication status||Published - 25 Mar 2014|
- high-level parallel programming models
- functional programming
- n-body problem