论文标题

BACO:快速和便携式贝叶斯编译器优化框架

BaCO: A Fast and Portable Bayesian Compiler Optimization Framework

论文作者

Hellsten, Erik, Souza, Artur, Lenfers, Johannes, Lacouture, Rubens, Hsu, Olivia, Ejjeh, Adel, Kjolstad, Fredrik, Steuwer, Michel, Olukotun, Kunle, Nardi, Luigi

论文摘要

我们介绍了贝叶斯编译器优化框架(BACO),这是针对CPU,GPU和FPGAS的现代编译器的通用自动开关。 BACO提供了应对现代自动调用任务要求所需的灵活性。特别是,它处理置换,有序和连续参数类型以及已知和未知参数约束。为了理解这些参数类型并有效地提供高质量的代码,BACO使用专门用于自动启动域的贝叶斯优化算法。我们演示了BACO对三个现代编译器系统的有效性:炸玉米饼,Rise&Epipate和CPU,GPU和FPGA的HPVM2FPGA。对于这些领域,BACO的表现平均以平均1.36 x-1.56倍的速度和较小的搜索预算来胜过当前的最新自动调节器,而BACO能够更快地达到专家级别的性能2.9倍-3.9倍。

We introduce the Bayesian Compiler Optimization framework (BaCO), a general purpose autotuner for modern compilers targeting CPUs, GPUs, and FPGAs. BaCO provides the flexibility needed to handle the requirements of modern autotuning tasks. Particularly, it deals with permutation, ordered, and continuous parameter types along with both known and unknown parameter constraints. To reason about these parameter types and efficiently deliver high-quality code, BaCO uses Bayesian optimiza tion algorithms specialized towards the autotuning domain. We demonstrate BaCO's effectiveness on three modern compiler systems: TACO, RISE & ELEVATE, and HPVM2FPGA for CPUs, GPUs, and FPGAs respectively. For these domains, BaCO outperforms current state-of-the-art autotuners by delivering on average 1.36x-1.56x faster code with a tiny search budget, and BaCO is able to reach expert-level performance 2.9x-3.9x faster.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源