有关FLOPS的定义与计算

FLOPS(即“每秒浮点运算次数”,“每秒峰值速度”),是“每秒所执行的浮点运算次数”(floating-point operations per second)的缩写。它常被用来估算电脑的执行效能,尤其是在使用到大量浮点运算的科学计算领域中。正因为FLOPS字尾的那个S,代表秒,而不是复数,所以不能省略掉。

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

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

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

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

一个EFLOPS(exaFLOPS)等于每秒一佰京(=10^18)次的浮点运算。

浮点计算峰值=处理器个数×处理器主频×每秒可进行的最高浮点运算次数(FMAD,乘加指令)

如下图所示:G80以及至今所有nvidia GPU的流处理器内部有两个ALU单元。

流处理器工作频率 x 流处理器数量 x 每流处理器的FLOPs数量(2个)=总数

每流处理器的FLOPs数量 == 指令吞吐率 = 2

sp可以做一个乘法一个加法

kepler:2880*0.745*2=4290Gflops频率无需x2 sp频率和核心频率相同

fermi: 512*0.650*2*2=1330Gflops 频率需x2 sp频率是核心频率的2倍

CUDA 中FLOPS的计算方法如下:

(1)统计您每个线程的计算次数

(2)将此值乘以您的线程总数

(3)统计出总时间(利用profiler或者自己计时),将2中的值(所有线程的计算次数)除以计算时间,您将得到每秒的计算次数。

(4)因为3中的值往往较大,所以大家一般使用GFlops来衡量(Giga float operations per second),

1G次运算 = 10 ^ 9次方次运算。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天四点多老公就起床了,着手准备回家的一些事情,我是五点才醒的,我起床后就看到二哥二嫂都已起床在忙碌着,今天老公和...
    不忘初心坚持到底阅读 3,613评论 5 1
  • 前几日已备好了酒,是给外婆捎的,满满三大箱,可够她喝一阵子。外婆是喜爱喝酒的,已是高龄,自然不管不劝,吃喝全是福气...
    青蛙他爷爷阅读 2,934评论 0 1
  • 电视剧中总有很俗套的剧情,某个人在无意中帮助了一个陌生人,结果去面试的时候居然惊喜的发现被帮助的陌生人居然是公司老...
    万丈ts阅读 4,308评论 0 6
  • 窗外,天空压得很低,灰蒙蒙的,一场暴风雨即将来临。 会议室里,椭圆形的会议室两边面对面坐着四个人,正在怒气冲冲讲话...
    明媚月光阅读 3,795评论 0 2
  • 今天是厦门路小学的家长节,早晨我早早来到学校,今天我们班的志愿者的任务是疏导交通,我们班由马艺航爸爸代领在红...
    王煜妈妈阅读 2,607评论 0 8