Selection of Parallel Runtime Systems for Tasking Models

Selection of Parallel Runtime Systems for Tasking Models
复制标题

任务模型的并行运行时系统的选择

DOI:
--
复制
发表时间:
2017
期刊:
2017 International Conference on Computational Science and Computational Intelligence (CSCI)
影响因子:
--
通讯作者:
Chun
Chun
中科院分区:
--
文献类型:
--
作者:
Chun

文献摘要

被引文献

相似文献

多核和多核处理器的普遍存在意味着许多通用程序员开始面临使用为大规模并行性设计的运行时系统的困难任务。他们不仅要通过任务处理发现和利用不规则的并行性,而且还要处理运行时系统,这些系统需要对任务粒度和调度性能进行专家调优。本文提供了实际操作经验,以帮助程序员选择合适的任务模型并设计程序。研究了三种不同运行时任务模型的调度策略:Cilk、OpenMP和高性能并行(HPX-5)。在提供不规则代码片段的未调优实现时,使用了六个不同的简单基准测试来揭示每个运行时的执行情况。具有不规则和动态结构的基准测试提供了关于每个系统运行时模型的优缺点的信息,特别是对于程序员来说,帮助优先和工作优先调度之间的差异。
The ubiquity of multi- and many-core processors means that many general purpose programmers are beginning to face the difficult task of using runtime systems designed for large-scale parallelism. Not only do they have to deal with finding and exploiting irregular parallelism through Tasking, but they have to deal with runtime systems that require an expert tuning of task granularity and scheduling for performance. This paper provides hands-on experiences to help programmers to select an appropriate tasking model and design programs. It investigates the scheduling strategies of three different runtime tasking models: Cilk, OpenMP and High Performance ParalleX (HPX-5). Six different simple benchmarks are used to expose how well each runtime performs when provided untuned implementations of irregular code fragments. The benchmarks, which have irregular and dynamic structures, provide information about the pros and cons of each system’s runtime model, particularly the differences to the programmer between help-first and work-first scheduling.