系列文章目录
文章目录
- 系列文章目录
- 【阅读笔记】【AI与可配置系统】Green Configuration: Can AI Help Reduce Energy Consumption of Configurable Software Systems/li>
- 摘要
- ML现在能做到什么/li>
-
- 用户角度:用于能耗优化的ML
- 开发者角度:用于能源根本原因分析的ML
- AI的限制:能量特性
- 总结
【阅读笔记】【AI与可配置系统】Green Configuration: Can AI Help Reduce Energy Consumption of Configurable Software Systems/h2>
阅读笔记,非全文翻译
问题
摘要
文章提供了:
- 一个概述,其概述的是用于估计在可配置软件系统的不同使用案例中能耗的不同ML技术
- 使用一系列学习算法的结果表明:需要处理不确定性和因果关系
- 开放式研究挑战:仅ML无法解决软件工程师在降低能耗方面的问题
ML现在能做到什么/h2>
两个方面:用户角度黑盒;开发者角度白盒
用户角度:用于能耗优化的ML
- 软件的配置项太多了,被用户忽略了,留有大量的潜在优化空间尚未被发掘。
- 用户不知道配置项对能耗的影响(黑盒),所以ML技术有用。
准确性是关键
- 近年研究表明:最准确的模型是分类树和回归树,随机森林和神经 络
- 微小的配置变化可能导致能耗的突然变化(non-monotonically)
- 数学上支持阶跃函数的学习技术能够比依赖平滑线性函数的技术更好地建模能耗。
但不确定性是做决策的关键因素
- 最近研究转向贝叶斯相关的方法
- 贝叶斯方法可以给出置信度和置信区间
开发者角度:用于能源根本原因分析的ML
- 软件系统可能有bug导致能耗异常
- 了解“哪些代码区域在哪个配置下消耗什么能量”也是软件维护和代码优化的前提
- bug需要采样和测量才能观察到,无法用黑盒模型
- 因此只使用ML不够,需要引入程序分析等技术
Intermezzo:白盒性能模型
- SE方法:静态分析和动态分析,但Velez的研究表明,纯SE方法可能不适用于能耗问题
性能作为能耗的代理/strong>
总结
- 我们提出了一个问题,即人工智能/多语言方法是否有助于减少可配置软件系统的能耗。
- 目前的答案是,只有在不需要深入了解的定量性质的情况下,我们才能使用ML技术找到更节能的软件配置。
- 只要我们想优化软件本身,ML本身是不够的。为此,我们需要建立从能量消耗行为到受配置选项影响的单个代码区域的跟踪,这样才能检测能量泄漏和低效代码。(需要将ML和SE结合)
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!