Parallel Haskell implementations of the N-body problem

Prabhat Totoo, Hans-Wolfgang Loidl.
To appear in Concurrency and Computation: Practice and Experience, Special Issue on the SICSA MultiCore Challenge Programming Language Support for Multicore Parallelism, 2012

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 based on 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.

Available in: pdf

Benchmark programs: Benchmark tarball (.tar.bz2)


GPH Papers | GPH