ApproxTuner: a compiler and runtime system for adaptive approximations

ApproxTuner: a compiler and runtime system for adaptive approximations
复制标题

DOI:
10.1145/3437801.3446108
复制
发表时间:
2021-02
期刊:
Proceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
影响因子:
--
通讯作者:
Hashim Sharif;Yifan Zhao;Maria Kotsifakou;Akash Kothari;Ben Schreiber;Elizabeth Wang;Yasmin Sarita;Nathan Zhao;Keyur Joshi;Vikram S. Adve;Sasa Misailovic;S. Adve
Hashim Sharif;Yifan Zhao;Maria Kotsifakou;Akash Kothari;Ben Schreiber;Elizabeth Wang;Yasmin Sarita;Nathan Zhao;Keyur Joshi;Vikram S. Adve;Sasa Misailovic;S. Adve
中科院分区:
其他
文献类型:
--
作者:
Hashim Sharif;Yifan Zhao;Maria Kotsifakou;Akash Kothari;Ben Schreiber;Elizabeth Wang;Yasmin Sarita;Nathan Zhao;Keyur Joshi;Vikram S. Adve;Sasa Misailovic;S. Adve

文献摘要

被引文献

相似文献

对于具有灵活精度或精度要求的资源密集型应用,手动优化精度,性能和能源之间的权衡是极其困难的。我们提出了ApproxTuner,这是一个自动框架,用于基于张量的应用程序的精度感知优化,同时只需要高水平的端到端质量规范。ApproxTuner实现和管理算法、系统软件和硬件中的近似。ApproxTuner的主要贡献是一种新的三阶段近似调优方法,它由开发阶段、安装阶段和运行阶段组成。我们的方法分离了与硬件无关的和特定于硬件的近似的调优,从而提供了跨设备的可重定向性。为了有效地实现逼近选择的自动调谐,我们提出了一种新的精度感知调谐技术,称为预测逼近调谐,它通过分析预测逼近的精度影响来显着加快自动调谐。我们在10个卷积神经网络(CNN)以及CNN和图像处理的组合基准上评估了ApproxTuner。对于评估的cnn,仅使用与硬件无关的近似选择,我们在GPU上实现了2.1倍(最大2.7倍)的平均加速,在CPU上实现了1.3倍(最大1.9倍)的平均加速,同时保持在1个百分点的推理精度损失之内。对于两种不同的精度预测模型,与传统的经验调谐相比,ApproxTuner的调谐速度提高了12.8倍和20.4倍,同时获得了相当的好处。
Manually optimizing the tradeoffs between accuracy, performance and energy for resource-intensive applications with flexible accuracy or precision requirements is extremely difficult. We present ApproxTuner, an automatic framework for accuracy-aware optimization of tensor-based applications while requiring only high-level end-to-end quality specifications. ApproxTuner implements and manages approximations in algorithms, system software, and hardware. The key contribution in ApproxTuner is a novel three-phase approach to approximation-tuning that consists of development-time, install-time, and run-time phases. Our approach decouples tuning of hardware-independent and hardware-specific approximations, thus providing retargetability across devices. To enable efficient autotuning of approximation choices, we present a novel accuracy-aware tuning technique called predictive approximation-tuning, which significantly speeds up autotuning by analytically predicting the accuracy impacts of approximations. We evaluate ApproxTuner across 10 convolutional neural networks (CNNs) and a combined CNN and image processing benchmark. For the evaluated CNNs, using only hardware-independent approximation choices we achieve a mean speedup of 2.1x (max 2.7x) on a GPU, and 1.3x mean speedup (max 1.9x) on the CPU, while staying within 1 percentage point of inference accuracy loss. For two different accuracy-prediction models, ApproxTuner speeds up tuning by 12.8x and 20.4x compared to conventional empirical tuning while achieving comparable benefits.