[论文解读] An introduction to approximate computing
本文提出近似计算作为一种范式,通过牺牲计算精度来换取性能和能效的提升,尤其适用于机器学习和多媒体等对精确结果要求不高的应用场景。该文提出一种分类体系,强调端到端的系统成本权衡,并分析了非确定性近似计算中的挑战,突出异构可靠性与自动化、系统化近似在实际部署中的机遇。
Approximate computing is a research area where we investigate a wide spectrum of techniques to trade off computation accuracy for better performance or energy consumption. In this work, we provide a general introduction to approximate computing. Also, we propose a taxonomy to make it easier to discuss the merits of different approximation techniques. Our taxonomy emphasizes the expected cost of tackling approximate computing across the entire system stack. We conclude by discussing the unique opportunities as well as challenges of nondeterministic approximate computing.
研究动机与目标
- 为应对移动设备和数据中心工作负载中日益增长的功耗,论证近似计算的必要性。
- 界定近似计算的范围与目标,将其与长期存在的技术(如有损压缩)区分开来。
- 提出一种分类体系,强调在硬件、软件和算法层面实现近似时的系统总成本。
- 分析非确定性近似计算所面临的独特挑战与机遇,特别是软件可靠性中的控制流瓶颈问题。
- 倡导采用系统化、自动化的近似技术,在提升效率的同时确保程序的可信性。
提出的方法
- 基于近似技术在系统栈中应用的位置(从算法到电路),提出近似计算技术的分类体系。
- 根据对系统成本的影响(包括硬件、软件和算法开销)对近似技术进行分类。
- 分析控制流瓶颈问题:在软件中保护用于条件判断的数据成本高昂,尤其在结果具有非确定性时。
- 通过图像编码和控制流依赖函数等案例研究,说明可靠性与效率之间的权衡。
- 考察现有工具如 Chisel 和 Uncertain<T>,对比确定性可靠性规范与概率编程模型的差异。
- 提出一种混合方法:使用可靠核心处理控制流,使用不可靠加速器处理计算密集型内核,以在成本与正确性之间取得平衡。
实验结果
研究问题
- RQ1如何在现代计算系统中系统性地实现精度与性能、能效之间的权衡?
- RQ2在应用近似技术时,系统栈中的关键成本驱动因素是什么?
- RQ3为何非确定性近似计算在控制流依赖型程序中尤其具有挑战性?
- RQ4我们能否在不牺牲程序正确性或可信性的情况下实现显著的效率提升?
- RQ5自动化、系统化的近似技术在使近似计算在真实系统中可行方面发挥什么作用?
主要发现
- 近似计算在机器学习和多媒体等应用中可实现显著的能效与性能提升,这些应用对精确结果并非严格依赖。
- 控制流瓶颈构成重大挑战:在软件中保护用于条件判断的数据成本高昂,尤其在结果非确定性时。
- 当与异构可靠性结合时,非确定性近似计算提供了独特机遇,例如使用可靠核心处理操作系统,使用不可靠加速器处理计算内核。
- 现有方法如 Chisel 和 Uncertain<T> 提供了有用的抽象,但受限于数据依赖性,且缺乏强正确性保证。
- 系统化、自动化的近似技术并辅以形式化保证,对实际应用至关重要,因为手动权衡已无法满足大规模系统的需求。
- 异构可靠性模型(即系统不同部分具有不同可靠性水平)可在保持可接受正确性的同时降低整体系统成本。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。