Skip to main content
QUICK REVIEW

[论文解读] Autotuning OpenCL Workgroup Size for Stencil Patterns

Chris Cummins, Pavlos Petoumenos|ENLIGHTEN (Jurnal Bimbingan dan Konseling Islam)|Nov 8, 2015
Parallel Computing and Optimization Techniques参考文献 13被引用 8
一句话总结

本文提出一种基于机器学习的自动调优方法,可自动为不同CPU和多GPU平台上的stencil模式选择最优OpenCL工作组大小。通过在合成基准上训练的分类器和回归器,该方法在固定工作组大小的基础上实现了中位数3.79倍的性能提升,并达到了最大性能的94%。

ABSTRACT

Selecting an appropriate workgroup size is critical for the performance of OpenCL kernels, and requires knowledge of the underlying hardware, the data being operated on, and the implementation of the kernel. This makes portable performance of OpenCL programs a challenging goal, since simple heuristics and statically chosen values fail to exploit the available performance. To address this, we propose the use of machine learning-enabled autotuning to automatically predict workgroup sizes for stencil patterns on CPUs and multi-GPUs. We present three methodologies for predicting workgroup sizes. The first, using classifiers to select the optimal workgroup size. The second and third proposed methodologies employ the novel use of regressors for performing classification by predicting the runtime of kernels and the relative performance of different workgroup sizes, respectively. We evaluate the effectiveness of each technique in an empirical study of 429 combinations of architecture, kernel, and dataset, comparing an average of 629 different workgroup sizes for each. We find that autotuning provides a median 3.79x speedup over the best possible fixed workgroup size, achieving 94% of the maximum performance.

研究动机与目标

  • 解决在异构架构上实现可移植、高性能OpenCL内核以应对stencil模式的挑战。
  • 通过使用机器学习自动化工作组大小选择,克服固定启发式方法和手动调优的局限性。
  • 通过在合成基准上训练实现跨程序泛化,减少对每个程序单独调优的需求。
  • 评估多种机器学习方法——分类器与回归器——在预测最优工作组大小方面的表现。

提出的方法

  • 采用三种自动调优方法:(1) 使用二元分类器预测最优工作组大小,(2) 使用回归器预测内核运行时间,(3) 使用回归器预测不同工作组大小下的相对性能。
  • 从内核和架构元数据中提取特征,包括矩阵维度、边界区域大小以及设备特定约束。
  • 从429种架构、内核和数据集的组合中收集训练数据,每种场景最多评估629个工作组大小。
  • 使用决策树和回归模型,在合成基准上进行训练,以预测未见过程序的高性能工作组大小。
  • 在训练和预测过程中,应用OpenCL设备和内核限制的约束,以过滤无效的工作组大小。
  • 通过与最佳固定工作组大小相比的加速比评估性能,并比较不同技术在中位数和四分位距(IQR)上的结果。

实验结果

研究问题

  • RQ1机器学习模型能否在无需手动调优的情况下,有效预测OpenCL中stencil模式的最优工作组大小?
  • RQ2在预测高性能工作组大小方面,分类方法与回归方法的表现如何比较?
  • RQ3使用回归器预测相对性能与直接分类最优大小相比,其影响如何?
  • RQ4该自动调优方法在多种硬件、内核和数据集下,特别是在驱动程序引起的约束条件下,其鲁棒性如何?

主要发现

  • 在429个测试场景中,该自动调优器相对于最佳固定工作组大小实现了中位数3.79倍的性能提升。
  • 该方法达到了最大可能性能的94%,表现出强大的可扩展性和可移植性。
  • 使用回归器预测相对性能的方法取得了最高的中位数加速比(1.33倍),优于其他技术。
  • 基于分类器预测最优工作组大小的方法运行时开销最低,实现了速度与准确性的良好平衡。
  • 基于回归器的运行时间预测方法效果最差,中位数加速比较低且四分位距较大,表明结果一致性较差。
  • 观察到性能异常值,部分预测的加速比低于1.0倍,另一些则超过2.0倍,凸显在边缘情况下的波动性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。