c代码中算法的能耗

时间:2016-11-20 17:33:33

标签: c energy

我需要用c代码计算算法的能耗。任何想法如何做到这一点,以及是否有预定义的功能?

提前致谢,

1 个答案:

答案 0 :(得分:0)

仅靠C代码几乎不可能做到这一点。允许C编译器转换大量C代码的多种方式不允许精确计算能量消耗。您需要知道编译器如何转换哪种架构的代码。

更简单(对于某些程度的“简单”)计算汇编程序命令并将它们与相应的延迟相乘(在技术规范中列出,例如,对于来自Wiki列表的随机选择的MCU:{{3} })。这仍然不准确,例如,分区可能需要不同的CPU周期,具体取决于硬件中的输入,CPU架构和实现,但它非常接近并且相当简单,虽然有点单调乏味。

并且存在具有完全未知数量的迭代的循环,输入采用具有不同运行时的不同路径以及更多。编写加密软件的人更了解它,特别是如何避免它。你可能不喜欢他们的解决方案。

否则:检查你对输入的期望(你知道输入了哪条路径,对吗?),写一个测试程序,转到例如:http://www.atmel.com/Images/doc32002.pdf得到一个良好的仪表和测量功耗。你还需要一个知道如何做到这一点的工程师,这并不容易!