Evaluation of FastFlow Technology for Real-World Application
It is challenging to parallelize a real application without the knowledge of low level modes of parallelism available in the application, such as data parallelism and task parallelism. Until now, the parallel programming models focus on these low level modes of a program to exploit parallelism. FastFlow provides an alternative high level pattern based mechanism to parallelize an application. It provides pattern specific constructs to parallelize an application, in order to achieve good parallel performance and ease of programming. FastFlow has been evaluated for basic kernels. In this paper we evaluate it based on a real-world application from Molecular Dynamics.
This work was funded by the EU Project Paraphrase.
- 1.Marco Aldinucci, Marco Danelutto, Peter Kilpatrick, Massimiliano Meneghin, and Massimo Torquati. Accelerating sequential programs using fastflow and self-offloading. arXiv preprint arXiv:1002.4668, 2010.Google Scholar
- 2.Marco Aldinucci, Marco Danelutto, Peter Kilpatrick, and Massimo Torquati. Fastflow: high-level and efficient streaming on multi-core. Programming Multi-core and Many-core Computing Systems, Parallel and Distributed Computing, 2012.Google Scholar
- 3.Marco Aldinucci, Marco Danelutto, and Massimo Torquati. Fastflow tutorial. arXiv preprint arXiv:1204.5402, 2012.Google Scholar
- 4.Michael P Allen. Introduction to molecular dynamics simulation. Computational Soft Matter: From Synthetic Polymers to Proteins, 23:1–28, 2004.Google Scholar
- 5.Leonardo Dagum and Ramesh Menon. Openmp: an industry standard api for shared-memory programming. Computational Science & Engineering, IEEE, 5(1):46–55, 1998.Google Scholar