Hybrid CPU–GPU execution support in the skeleton programming framework SkePU

Hybrid CPU–GPU execution support in the skeleton programming framework SkePU
复制标题

骨架编程框架 SkePU 中的混合 CPU-GPU 执行支持

DOI:
10.1007/s11227-019-02824-7
复制
发表时间:
2019
期刊:
The Journal of Supercomputing
影响因子:
--
通讯作者:
C. Kessler
C. Kessler
中科院分区:
--
文献类型:
--
作者:
Tomas Öhberg;August Ernstsson;C. Kessler

文献摘要

被引文献

相似文献

在本文中,我们提出了骨架编程框架SkePU的混合执行后端。后端能够自动划分工作负载,并在多核CPU和任意数量的加速器(如gpu)上同时执行计算。我们将展示如何有效地划分诸如Map、MapReduce和Scan等骨架的工作负载,以允许在异构计算机系统上混合执行。我们还展示了一种统一的方法来预测如何基于性能建模对工作负载进行分区。通过对典型骨架实例的实验,我们展示了使用新的混合后端时所有骨架的加速。我们还对一些实际应用程序的性能进行了评估。最后,我们证明了与基于动态调度的旧混合执行实现相比,新的实现具有更高和更可靠的性能。
In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. The backend is capable of automatically dividing the workload and simultaneously executing the computation on a multi-core CPU and any number of accelerators, such as GPUs. We show how to efficiently partition the workload of skeletons such as Map, MapReduce, and Scan to allow hybrid execution on heterogeneous computer systems. We also show a unified way of predicting how the workload should be partitioned based on performance modeling. With experiments on typical skeleton instances, we show the speedup for all skeletons when using the new hybrid backend. We also evaluate the performance on some real-world applications. Finally, we show that the new implementation gives higher and more reliable performance compared to an old hybrid execution implementation based on dynamic scheduling.