返回
HRPF: A parallel programming framework for recursive algorithms on heterogeneous CPU-GPU systems
DOI:10.1016/j.parco.2026.103187.png)
摘要
En 中文
递归作为一种常见的编程范式,被广泛应用于众多应用中。通过将递归问题视为任务,递归过程生成许多独立的子任务,这揭示了并行的潜力。为了在异构CPU-GPU系统上利用这种并行性,本文介绍了HRPF(异构递归并行编程框架)。HRPF提供了一套编程接口来定义递归算法,屏蔽了用户在任务分配、调度和数据移动方面的复杂性。这促进了在CPU-GPU系统上高效且简便地实现并行递归程序。HRPF通过结合深度优先搜索(DFS)和广度优先搜索(BFS)策略在CPU和GPU工作线程之间调度任务。它采用了一种混合工作窃取调度算法,结合了工作优先和帮助优先策略以实现动态负载均衡。HRPF运行时系统确保主机和设备之间的数据一致性,并重叠计算与数据传输。此外,HRPF提供了一套并行循环编程接口。为了评估HRPF,我们在四种常用算法中实现了包括归并排序、快速排序、Strassen-Winograd矩阵乘法和并行循环在内的多个基准测试。在CPU-GPU平台上的实验结果表明,与OpenMP、StarPU和Taskflow相比,HRPF在一系列基准测试中实现了更优的性能。
Keyword:
Parallel programming model
Heterogeneous computing
Recursive algorithm
Work-stealing
Loop parallelization
期刊
P
IF:
2.1
论文数:
19
被引数:
0
机构
引用论文
HeteroPP: A directive‐based heterogeneous cooperative parallel programming frameworkHeteroPP:一种基于指令的异构协同并行编程框架

