A Pattern-Based Comparison of OpenACC and OpenMP for Accelerator Computing
A Pattern-Based Comparison of OpenACC and OpenMP for Accelerator Computing
复制标题
DOI:
10.1007/978-3-319-09873-9_68
复制
发表时间:
2014-08
期刊:
影响因子:
--
通讯作者:
Sandra Wienke;C. Terboven;James C. Beyer;Matthias S. Müller
中科院分区:
文献类型:
--
作者:
Sandra Wienke;C. Terboven;James C. Beyer;Matthias S. Müller
Nowadays, HPC systems frequently emerge as clusters of commodity processors with attached accelerators. Moving from tedious low-level accelerator programming to increased development productivity, the directive-based programming models OpenACC and OpenMP are promising candidates. While OpenACC was completed about two years ago, OpenMP just recently added support for accelerator programming. To assist developers in their decision-making which approach to take, we compare both models with respect to their programmability. Besides investigating their expressiveness by putting their constructs side by side, we focus on the evaluation of their power based on structured parallel programming patterns (aka algorithmic skeletons). These patterns describe the basic entities of parallel algorithms of which we cover the patternsmap,stencil,reduction,fork-join,superscalar sequence,nestingandgeometric decomposition. Architectural targets of this work are NVIDIA-type accelerators (GPUs) and specialties of Intel-type accelerators (Xeon Phis). Additionally, we assess the prospects of OpenACC and OpenMP concerning future development in soft- and hardware design.