模型运算量、显卡算力说明

2024-03-05 10:43:22 浏览数 (2)

关于深度学习的算力、计算量存在很多单位,本文记录相关内容。

概念

算力

指计算设备(GPU、CPU、NPU等)完成计算的能力大小,一般评价指标为在单位时间内完成的运算次数

计算量

指模型推断过程中需要的运算量,一般用来评价模型规模以及推断运行时间

常用单位

单位类型

英文缩写

英文

含义

芯片速度类

OPS

operations per second

每秒处理次数 (S大写,表示 second),通俗是对INT8类型的操作次数,整型默认省略。

芯片速度类

FLOPS

Floating point number operations per second

每秒处理浮点数次数(S大写,表示 second),通常是FP32,浮点着重强调。

芯片速度类

TOPS

Tera operations per second

每秒处理的万亿次数 $10^{12}$(S大写,表示 second)

芯片速度类

TFLOPS

Tera Floating point number operations per second

每秒处理浮点数的万亿次数 $10^{12}$(S大写,表示 second)

芯片速度类

FLOPs

Floating point number operations

模型推理需要处理浮点操作的次数(S小写,表示复数)

模型体量类

TFLOPs

Tera Floating point number operations

模型推理需要处理浮点操作的万亿次数 $10^{12}$(S小写,表示复数)

  • 最常用也容易混淆的几个单位:TOPS 和 FLOPS,及FLOPs

1、最大的混淆点,上述三个名词是两种东西,注意“S/s”的大小写。TOPS和FLOPS指的是每秒的计算量,算是速度方面的,用在芯片算力性能上。FLOPs指的是深度学习模型自身的计算量,算是体量方面的,用在深度学习模型本身参数计算量上。

2、针对算力速度方面的TOPS和FLOPS,其中OPS指的是每秒处理次数,但通常是默认对INT8整型数的处理次数(INT8省略不写),加上FL后FLOPS指的是对FP32浮点数的处理次数。

3、仍然是针对算力速度方面的TOPS和FLOPS,这里的T指的是量级(Tera ,万亿,10^12),同理TFLOPS专门指每秒对浮点数处理的达到多少万亿次数。

  • 下图为nvidia-A100/H100部分算力信息,可对比TOPS/TFLOPS区别。
  • 对于描述模型算力的 TFLOPs

网络

运算量

AlexNet

对于AlexNet处理224*224的图像,需要1.4G FLOPS

ResNet-152

对于224*224的图像,ResNet-152需要22.6G FLOPS

算力单位量级变换

单位

描述

1 MOPS = 10^6 FLOPS

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

1 GOPS = 10^9 FLOPS

一个GFLOPS(gigaFLOPS)等于每秒十亿 (=10^9)次的浮点运算,十亿(部分地方可能会用B,billion,十亿)

1 TOPS = 10^12 FLOPS

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

1 PFLOPS = 10^15 FLOPS

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

1 EFLOPS = 10^18 FLOPS

每秒一百京(=10^18)次的浮点运算。

1 ZFLOPS = 10^21 FLOPS

等于每秒十万京(=10^21)次的浮点运算。

科学计算单位换算

10^15

拍它

P

peta

10^12

太拉(万亿)

T

tera

trillion 万亿

10^9

吉咖(十亿)

G

giga

billion 十亿

10^6

兆(百万)

M

mega

million 百万

10^3

k

kilo

参考资料

  • https://blog.csdn.net/zaibeijixing/article/details/135425642
  • https://blog.csdn.net/zwqjoy/article/details/132056456
  • https://zhuanlan.zhihu.com/p/649993943

文章链接:

https://cloud.tencent.com/developer/article/2393847

0 人点赞