[论文解读] A Many-core Machine Model for Designing Algorithms with Minimum Parallelism Overheads
本文提出了一种多核机器模型(MMM),通过整合 fork-join 和 SIMD 并行性,最小化 GPU 程序中的并行性开销。通过引入并行性开销度量,并将 Graham-Brent 定理扩展为包含工作量、跨度和开销的模型,该模型实现了精确的运行时估计与参数优化,经由四个科学计算算法的实验验证,结果证实了理论预测的准确性。
We present a model of multithreaded computation, combining fork-join and single-instruction-multiple-data parallelisms, with an emphasis on estimating parallelism overheads of programs written for modern many-core architectures. We establish a Graham-Brent theorem for this model so as to estimate execution time of programs running on a given number of streaming multiprocessors. We evaluate the benefits of our model with four fundamental algorithms from scientific computing. In each case, our model is used to minimize parallelism overheads by determining an appropriate value range for a given program parameter; moreover experimentation confirms the model's prediction.
研究动机与目标
- 设计一种计算模型,以同时捕捉现代多核架构(如 GPU)中的基于任务的(fork-join)和基于数据的(SIMD)并行性。
- 量化并最小化 GPU 程序中由通信和同步引起的并行性开销。
- 通过引入工作量、跨度和新的并行性开销度量,扩展经典 Graham-Brent 定理,以实现对 P 个流式多处理器上运行时的精确预测。
- 通过识别最小化开销同时保持计算工作量的最优参数范围,指导算法设计。
- 通过在四个基础科学计算算法上的实证评估,验证模型的预测能力。
提出的方法
- 提出一种两级 DAG 模型,用于表示异构 GPU 程序中的任务级与数据级并行性。
- 引入一种新的复杂度度量——并行性开销,以独立于算术工作量的方式量化同步与通信成本。
- 推导出一个修改后的 Graham-Brent 定理,其执行时间上界为 $ T_P \leq \frac{W}{P} + S + O $,其中 $ W $ 为工作量,$ S $ 为跨度,$ O $ 为并行性开销。
- 利用扩展定理的推论 1,比较朴素实现与优化实现之间的运行时估计。
- 通过最大化比值 $ O_{\text{naive}} / O_{\text{optimized}} $ 的同时保持工作量变化最小,对程序参数(如线程块大小、数据传输粒度)进行优化。
- 将该模型应用于四个算法——多项式 GCD、多项式乘法、基数排序和欧几里得算法,结合理论分析与基于 CUDA 的实验。
实验结果
研究问题
- RQ1如何设计一种计算模型,有效结合 fork-join 与 SIMD 并行性,以准确建模真实 GPU 执行行为?
- RQ2通信与同步开销对 GPU 算法性能有何影响?如何对其进行量化?
- RQ3是否可以通过在 Graham-Brent 定理中引入并行性开销,提升 GPU 程序运行时预测的准确性?
- RQ4在 GPU 优化算法中,哪些最优参数范围可最小化并行性开销?
- RQ5该模型的理论预测与真实 GPU 代码中的实测执行时间在多大程度上一致?
主要发现
- 对于多项式 GCD 算法,模型预测参数 $ s = 256 $ 时性能最优,实验结果证实了该预测。
- 当 $ Z > 9.6 $ 时,优化后的欧几里得算法的运行时间估计比值 $ R $ 大于 1,且由于 $ Z $ 在实际中始终更大,因此优化版本始终更快。
- 在多项式乘法中,模型表明应将参数 $ s $ 最小化,实验结果证实 $ s = 4 $ 是 2 到 32 之间最优的取值。
- 该模型对欧几里得算法的运行时估计与 Systolic VLSI Array 模型的结果高度吻合,验证了其预测准确性。
- 优化后的欧几里得算法的 CUDA 实现表现出与多项式次数成线性时间复杂度的关系,最高可达次数 10,000,证实了该模型的实际应用价值。
- 在基数排序中,模型预测的最优参数范围与先前研究的实证发现一致,表明该模型在不同算法间具有良好的一致性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。