[论文解读] Data dependent energy modelling: A worst case perspective
本文提出了一种数据依赖的能量建模方法,通过分析指令转换及其输入/输出数据依赖关系,预测嵌入式程序的最坏情况能耗。在AVR处理器上结合遗传算法与概率建模,结果表明:通过随机数据分布可对最坏情况能耗进行边界约束,而基于转换的能耗分布可实现对指令序列的精确上界估计。
Energy consumption of the software running on a device has become increasingly important as a growing number of devices rely on batteries or other limited sources of power. Of particular interest is constructing a bounded measure of the energy consumption - the maximum energy a program could consume for any input given to it. We explore the effect of different data on the energy consumption of individual instructions, instruction sequences and full programs. The whole program energy consumption of two benchmarks is analysed over random and hand-crafted data, and maximized with genetic algorithms for two embedded processors. We find that the worst case can be predicted from the distribution created by the random data, however, hand-crafted data can often achieve lower energy consumption. A model is constructed that allows the worst case energy for a sequence of instructions to be predicted. This is based on the observation that the transition between instructions is important and thus is not a single energy cost - it is a distribution dependent on the input and output values of the two consecutive instructions. We characterise the transition distributions for several instructions in the AVR instruction set, and show that this gives a useful upper bound on the energy consumption. We explore the effect that the transfer function of the instruction has on the data, and give an example which leads to a bimodal energy distribution. Finally, we conclude that a probabilistic approach is appropriate for estimating the energy consumption of programs.
研究动机与目标
- 为所有可能输入的程序开发最大能耗消耗的有界度量。
- 理解输入数据在指令、指令序列及程序层面如何影响能耗。
- 将指令转换建模为数据依赖的能耗分布,以实现对最坏情况的精确估计。
- 评估随机数据与手工构造数据在揭示最坏情况能耗行为方面的优劣。
- 构建一个概率框架,支持对嵌入式软件的能耗上界预测。
提出的方法
- 使用遗传算法在随机和手工构造的输入数据上最大化能耗,针对两个嵌入式基准程序进行实验。
- 通过将连续指令之间的转换建模为数据依赖分布,分析指令级别的能耗消耗。
- 对AVR指令集中若干指令的转换能耗分布进行表征。
- 探索指令传输函数对能耗分布形状的影响,识别出双峰模式。
- 基于连续指令的输入/输出值对,构建概率模型以估计能耗的上界。
- 通过比较基于随机数据与手工构造输入数据所得的最坏情况估计值,评估模型的预测能力。
实验结果
研究问题
- RQ1能否通过指令转换的数据驱动模型可靠预测程序的最坏情况能耗?
- RQ2在揭示嵌入式程序最大能耗方面,随机数据与手工构造数据相比表现如何?
- RQ3指令转换动态(依赖于输入和输出值)在多大程度上影响能耗分布?
- RQ4基于转换分布的概率模型能否为指令序列提供有用的能耗上界?
- RQ5指令的传输函数在塑造能耗分布方面起什么作用,特别是在双峰行为等情况下?
主要发现
- 程序的最坏情况能耗可有效从随机输入数据生成的能耗分布中预测得出。
- 手工构造的数据通常导致比随机数据更低的能耗,表明最坏情况行为并不总是由随机输入触发。
- 指令转换对能耗变化有显著贡献,将它们建模为数据依赖分布可提升预测精度。
- 在一个示例中观察到双峰能耗分布,表明某些指令转换可能因输入值不同而产生两种不同的能耗水平。
- 所提出的基于输入/输出转换的概率模型为指令序列提供了有用且可分析的能耗上界。
- 基于转换的能耗模型捕捉了单指令能耗模型所忽略的关键依赖关系,从而实现更精确的最坏情况估计。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。