Parallel Haskell implementations of the N‐body problem. (11th July 2013) - Totoo, Prabhat; Loidl, Hans‐Wolfgang; Qiu, Judy; Foster, Ian; Taylor, Ronald; Loidl, Hans‐Wolfgang; Singer, Jeremy
SUMMARY 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 © 2013 John Wiley & Sons, Ltd.