【发布时间】:2018-10-09 07:26:56
【问题描述】:
在嵌入式/移动环境中,我们在为其开发软件时必须考虑电池电量消耗,因此节能软件编程在嵌入式/移动世界中很重要。
问题是,(关于 Assembly/C/C++)
认为当它在任意平台上运行时我们有稳定的软件版本X它消耗Y量的功率(以瓦为单位),现在我们将执行一些代码变化,我们想在构建时测量它对能源消耗及其效率的影响。
INT16U x = OXFFFF;
/... some code in stable release .../
for(;x<4096;++x)
{
/... some code in stable release .../
INT64U foo = x >> 256 ? x : 4096 ; // point 1 sample code change;
if(~foo & foo) foo %= 64 ; // point 1 sample code change;
/... some code in stable release .../
}
如果我们想测量此代码如何更改@point1 对能源效率的影响(相对于稳定版本统计)而不是分析空间和时间(性能加内存),如果我们想要用 C/C++ 构建一个简单的能量/功率分析和分析工具,
- 是否有任何推荐的 C/C++ 库或源来构建功耗分析工具?
- 如果我们必须通过每次代码更改的 CPU/GPU 指令级别更改来分析和确定功耗级别的变化,例如
point1,我们如何确定任意 CPU 或 GPU 上的每条指令的功耗各自的平台? - 开发人员如何知道由于在应用程序构建时而不是运行时更改代码而降低或增加了多少功耗?
【问题讨论】:
-
将功率计连接到设备的电源?
-
@Someprogrammerdude 够准确吗?
-
是的,基本上每个人都会检查电脑的耗电量。
-
@Someprogrammerdude 你对此有何看法? software.intel.com/en-us/articles/…
标签: c++ c mobile embedded profiling