我已经提取了我的每个算法消耗了多少个触发器(浮点运算),
CPU或ASIC / FPGA中的功率估算对我都有好处。我正在寻找像公式一样的东西。对于Intel CPU,我有this journal paper。它给出了每条指令的功耗(不仅是浮点运算,还包括所有那些寻址,控制等指令),所以我需要一些更通用的功能来根据FLOPS提供功率而不是特殊处理器中代码的指令数。
答案 0 :(得分:0)
Re CPU:现代架构真的不可能。让我们假设您的程序在裸机上运行(即避免现代操作系统,其他应用程序,中断处理,优化编译器等的复杂性)。未使用的电路,现代处理器将以降低的功率水平运行。还存在硬件节能状态,例如P(功率)和C(休眠)状态,这些状态与指令无关,即使使用相同的指令序列也会改变功耗。即使我们假设您的应用程序受CPU限制(意味着没有足够长的时间段以允许处理器进入硬件省电状态),我们无法预测除了总体统计级别之外的功率使用情况。指令流是流水线的,无序的,融合的等等。这甚至不包括内存层次结构等。
FPGA:哦,哎呀。我对FPGA的经验是如此古老,以至于我真的不想从何时开始说。我可以说的是,当巨大的怪物在地球上漫游时,您可以估算电源使用情况,因为您知道电路设计,以及开关门的功耗。我无法想象现代FPGA中没有内置的现代节能技术。即便如此,我扫描的小文献暗示许多FPGA电源技术都是基于先验分析和优化。请参阅Design techniques for FPGA power optimization和40-nm FPGA Power Management and Advantages。 (顺便说一下,我只是快速搜索和扫描了论文,所以不要过多关注我的结论。)