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
中科院分区:
其他
文献类型:
--
作者:
Sandra Wienke;C. Terboven;James C. Beyer;Matthias S. Müller

文献摘要

被引文献

相似文献

如今,HPC系统经常以带有附加加速器的商用处理器集群的形式出现。从乏味的低级加速器编程转向提高开发效率,基于指令的编程模型OpenACC和OpenMP是很有前途的候选模型。虽然OpenACC大约在两年前完成,但OpenMP最近才增加了对加速器编程的支持。为了帮助开发人员决定采用哪种方法,我们比较了两种模型的可编程性。除了通过将它们的结构并排放置来研究它们的表达性之外,我们还将重点放在基于结构化并行编程模式(又名算法骨架)的能力评估上。这些模式描述了并行算法的基本实体,包括模式映射、模板、约简、叉连接、超标量序列、嵌套和几何分解。这项工作的架构目标是nvidia类型的加速器(gpu)和intel类型的加速器(Xeon处理器)。此外,我们还评估了OpenACC和OpenMP在软硬件设计方面的未来发展前景。
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.