FLOPS和TOPS的区别 以及 算力的计算方法

TFLOPs和 TOPs都是描述深度学习设备计算能力的单位,1TFLOPS与1TOPS,前者代表是每秒执行1万亿次 浮点 运算次数,后者代表每秒执行1万亿次运算次数,区别FL即float浮点,大多数NPU都是定点运算,故通TOPS来标称算力。它们之间的转换通常可以用(1太拉)1TFLOPS=2*1TOPS来计算,但是需要注意TFLOPS中有单精度FP32 和半精度FP16的区别,默认是FP16。

理论峰值 = GPU芯片数量GPU Boost主频核心数量*单个时钟周期内能处理的浮点计算次数

只不过在GPU里单精度和双精度的浮点计算能力需要分开计算,以最新的Tesla P100为例:

双精度理论峰值 = FP64 Cores * GPU Boost Clock * 2 = 1792 *1.48GHz*2 = 5.3 TFlops

单精度理论峰值 = FP32 cores * GPU Boost Clock * 2 = 3584 * 1.58GHz * 2 = 10.6 TFlop
单精度计算能力的峰值 = 单核单周期计算次数 × 处理核个数 × 主频

算力单位

TOPS(Tera Operations Per Second:)1TOPS处理器每秒钟可进行一万亿次(10^12)操作。

GOPS(Giga Operations Per Second):1GOPS处理器每秒钟可进行一亿次(10^9)操作。

MOPS(Million Operation Per Second):1MOPS处理器每秒钟可进行一百万次(10^6)操作。

如下表示FLOPS,分别以M,G,T,P四种级别来表示,当然你也可以用到TOPS上面

一个MFLOPS(megaFLOPS)等于每秒一百万(=10^6)次的浮点运算,

一个GFLOPS(gigaFLOPS)等于每秒十亿(=10^9)次的浮点运算,

一个TFLOPS(teraFLOPS)等于每秒一万亿(=10^12)次的浮点运算,(1太拉)

一个PFLOPS(petaFLOPS)等于每秒一千万亿(=10^15)次的浮点运算,