1 FLOPS
在描述GPU的性能时,我们常常用到FLOPS进行描述。FLOPS是floating point operations per second
的简写,即每秒所能够进行的浮点运算数目。
FLOPS = 单个算数流水线一个时钟内可执行指令数目 * 单核算数流水线个数 * GPU核心数目 * 运行频率。
通常是一个很大的数目,因此我们常常采用GFLOPS作为单位
2 FLOPs
FLOPs:floating point operations,表示浮点运算次数,小s后缀是复数的缩写,可以看作FLOPS在时间上的积分,区别类似距离和速度。
浮点运算主要就是W相关的乘法,以及b相关的加法,通常不考虑非线性函数的计算量。每一个W对应W中元素个数个乘法,每一个b对应一个加法,因此好像FLOPS个数核parameters是相同的。
但其实有一个地方我们忽略了,那就是每个feature map上每个点的权值是共享的,所以我们在计算FLOPs时,只需在parameters的基础上再乘以
feature map的大小即可。对于全连接层,由于不存在权值共享,它的FLOPs数目即是该层参数数目。