Loop Parallelism: A New Skeleton Perspective on Data Parallel Patterns
Loop Parallelism: A New Skeleton Perspective on Data Parallel Patterns
复制标题
循环并行:数据并行模式的新骨架视角
DOI:
--
复制
发表时间:
2014
期刊:
影响因子:
--
通讯作者:
M. Torquati
中科院分区:
文献类型:
--
作者:
M. Danelutto;M. Torquati
Traditionally, skeleton based parallel programming frameworks support data parallelism by providing the programmer with a comprehensive set of data parallel skeletons, based on different variants of map and reduce patterns. On the other side, more conventional parallel programming frameworks provide application programmers with the possibility to introduce parallelism in the execution of loops with a relatively small programming effort. In this work, we discuss a "ParallelFor" skeleton provided within the FastFlow framework and aimed at filling the usability and expressivity gap between the classical data parallel skeleton approach and the loop parallelisation facilities offered by frameworks such as OpenMP and Intel TBB. By exploiting the low run-time overhead of the FastFlow parallel skeletons and the new facilities offered by the C++11 standard, our ParallelFor skeleton succeeds to obtain comparable or better performance than both OpenMP and TBB on the Intel Phi many-core and Intel Nehalem multi-core for a set of benchmarks considered, yet requiring a comparable programming effort.