作者ggg12345 (ggg)
看板CSSE
标题Re: [问题] 如何计算CPU的峰值浮点计算能力FLOPS
时间Mon Jun 21 20:34:12 2010
※ 引述《micklin (mick doohan)》之铭言:
: ※ 引述《aada (aada)》之铭言:
: : 处理器个数*处理器主频*每秒可进行的最高浮点运算次数 = 浮点算峰值,
^^^^ clock cycle
: http://www.intel.com/support/processors/sb/cs-023143.htm
看这个表
i7-975 就是 16 flop/cycle
i7-620 就是 8 flop/cycle
所谓 峰值(peak) 就是理论值.
浮点运算器通常都使用 piple line architecture , 不管分
了多少个 stage , 理论上就是每个 clock cycle 移动一级,
看 pipleline 出口处就是最快每个 cycle 产出一个结果.
每条 pipleline 若无特殊设计, 那就是 flop/cycle.
多核心时代, IC 面积不要钱, 就多抄几条 floating point
pipeline 进去. 所以都是整数值.
Intel X86 CPU 的外装 clock 振荡器一向要被处理成非对称
的 2 Phase clock 才用於内部. 8086 的整数乘除记得是 72
machine clock cycle, 她的 machine clock cycle 是 1/4
外部 clock.
既然是 peak 值, 那就算有几个 floating pipleline 用那
个 clock rate 乘起来算. 至少这是理论上限.
: 可以查到intel cpu的flops. 表格中的数据与你查到的不同.
: GFLOPS是算出来的, 每秒可以跑几Giga次的浮点数运算.
: 以多核而非多实体处理器来看, 4核心是不是表示GFLOPS可以变4倍,
: 有请高手回答.
: 我个人认为, Intel公布的数据是整体的GFLOPS, 而非单核运作时的数据.
: 请参考 http://www.intel.com/support/processors/sb/cs-017346.htm
这网站说明的很不错, 已经暗示是外销第三世界(譬如喜欢 500 大的地区)
要满足美方禁运法规又要满足海外顾客需求, 摆明就是抢标案用的.
: 用你的公式来看, 得到的答案是 「每秒每Hz可进行的最高浮点运算次数」
: 如果架构相同, 只有时脉不同, 那你得到的值应该是一样的.
那张表, 同一种制程系列的 flop/cycle 都相同.
※ 编辑: ggg12345 来自: 140.115.4.12 (06/21 20:38)