A taxonomy of task-based parallel programming technologies for high-performance computing

A taxonomy of task-based parallel programming technologies for high-performance computing
复制标题

DOI:
10.1007/s11227-018-2238-4
复制
发表时间:
2018-04-01
影响因子:
3.3
通讯作者:
Nikolopoulos, Dimitrios S.
Nikolopoulos, Dimitrios S.
中科院分区:
计算机科学4区
文献类型:
--
作者:
Thoman, Peter;Dichev, Kiril;Nikolopoulos, Dimitrios S.

文献摘要

被引文献

相似文献

共享内存的基于任务的编程模型(如Cilk Plus和OpenMP 3)已经得到了很好的建立和记录。然而,随着并行、众核和异构系统的增加,许多研究驱动的项目已经开发出更多样化的基于任务的支持,采用各种编程和运行时功能。不幸的是,尽管当今存在数十种不同的基于任务的系统,并且这些系统被积极地用于并行和高性能计算(HPC),但是没有针对HPC的基于任务的技术的全面概述或分类。在本文中,我们为HPC技术提供了一个初始的以任务为中心的分类法,其中涵盖编程接口和运行时机制。我们证明了我们的分类法的有用性,通过分类的最先进的基于任务的环境中使用的今天。
Task-based programming models for shared memory-such as Cilk Plus and OpenMP 3-are well established and documented. However, with the increase in parallel, many-core, and heterogeneous systems, a number of research-driven projects have developed more diversified task-based support, employing various programming and runtime features. Unfortunately, despite the fact that dozens of different task-based systems exist today and are actively used for parallel and high-performance computing (HPC), no comprehensive overview or classification of task-based technologies for HPC exists. In this paper, we provide an initial task-focused taxonomy for HPC technologies, which covers both programming interfaces and runtime mechanisms. We demonstrate the usefulness of our taxonomy by classifying state-of-the-art task-based environments in use today.