峰值计算
FLOPS在高性能计算机集群(超算)上可以使用如下公式计算:
细分到处理器上,以单个 Intel® Xeon® Gold 6258R 举例,该处理器基于Cascade Lake架构,每个计算单元有2个FMA(fused multiply-add),每个FMA可以对512bit数据在一个时钟周期中做一次乘运算和一次加运算:
(512bit/32bit) x 2(FMA) x 2(乘和加) = 64 SP FLOPs/cycle,即每个时钟周期可以做64个单精度浮点计算。
(512bit/64bit) x 2(FMA) x 2(乘和加) = 32 DP FLOPs/cycle,即每个时钟周期可以做32个双精度浮点计算。
因单个CPU峰值浮点计算性能 = CPU核数 x CPU频率 x 每周期执行的浮点操作数,故 Intel® Xeon® Gold 6258R 处理器:
单精度理论峰值性能 = 28(CPU核数) x 2.7GHz(CPU频率) x 64 SP FLOPs/cycle = 4838.4 GFLOPs/s 峰值浮点计算能力。
双精度理论峰值性能 = 28(CPU核数) x 2.7GHz(CPU频率) x 32 DP FLOPs/cycle = 2419.2 GFLOPs/s 峰值浮点计算能力。