linux - 是否可以在程序中提取指令特定能耗?
问题描述
我的意思是,给定一个源代码文件,是否可以使用 perf 之类的工具提取特定代码块或 1 条指令的能耗水平?
解决方案
使用jRAPL,它是一个用于分析在 CPU 上运行的 Java 程序的框架。
例如,下面的代码片段尝试测量任何代码块的能耗,其值是开始和结束之间的差:
double beginning = EnergyCheck.statCheck();
doWork();
double end = EnergyCheck.statCheck();
System.out.println(end - beginning);
该框架的详细论文名为“应用级能源优化的面向数据的特征”,位于http://gustavopinto.org/lost+found/fase2015.pdf
推荐阅读
- java - 如何使用 TypedArray.getResourceId() 方法返回值?
- android - 如何在 Android 的 Recyclerview 的 onCreateViewHolder 中更改特定 LinearLayout 子项的颜色
- java - 当对象的所有字段都设置为默认值时,为什么实例常量有一个值?
- flutter - 如何使用 Shimmer 在 Flutter App 中添加 X 持续时间的延迟?
- html - SVG G Path Not Displaying
- css - 居中输入的文本[type=button]
- arrays - 如何访问嵌套的 json 对象?| 在 Laravel 电子商务项目中显示订单]
- sql - SQL 中的 PIVOT 给出错误 - ORA-00933: SQL 命令未正确结束
- python - 如何从位于不同目录中的另一个 python 文件执行 python 文件
- python - 用beautifulsoup从天才歌词中获取歌曲歌词│python 3.8