说起处理器的速度,不论是CPU还是GPU,我们首先应该想到的就是MHz(兆赫)或是GHz(吉赫)。不过当我们需要对比不同型号和版本的处理器时,这两项数据就显得不是那么有用。所以人们开始依赖一项名为“FLOPS”的参数,用它来形容自己最强的新款硬件,那么这个FLOPS是什么意思呢?
![7b9db815d2666c420d25b9a7ca81ec6b.png](https://i-blog.csdnimg.cn/blog_migrate/64783ec413ffa1ae4e61ddcb4ad43474.jpeg)
想了解FLOPS要先明白计算机是如何计算的
目前计算机中的单个数字一般来说不是32位就是64位,这主要取决于你正在使用的处理器和程序的类型,我们用64位来举例,看一下如何显示“23”这个数字。
![357a5443b7cccbfc22f66d6f76c90dad.png](https://i-blog.csdnimg.cn/blog_migrate/510b2b3e11288553380e3656e0f0cfaa.jpeg)
第一段为符号位,这里的数代表数值的正负,0代表正数,1代表负数。
第二段为指数加上1023后的二进制表示,转化为十进制可以得到1027,所以指数是1027-1023=4。
第三段为省略开头的1后,小数点后的数字。
所有这些结合起来,得到后面的数为二级制的2^4*(1.)011,这意味着这个数的小数点应该向右移四位。即二进制的10111,用日常使用的十进制来表示就是23。
FLOPS是什么
FLOPS是一个性能单位,全称为“每秒浮点运算次数”,代表着这个硬件浮点性能的强弱。实际上它不能用来做什么,而只是用来表示你的处理器能有多快的速度进行运算,包括对大数小数和分数的运算。
它之所以重要是因为计算机中用于储存待运算数值的空间有限,而通过上面的演示我们可以发现,计算机在计算时所用到的数字绝不是我们平时见到的整数。不仅每个数字在计算前都需要经过非常繁复的过程让其转换为计算机能够“看懂”的样子,而且往往会遇到极大或极小的数字。
所以为了表示从极小到极大的数字,一般比特位是用来储存数字的“数值”本身,其他的位置要用于指明小数点的位置,有点像科学计数法。但要记住你的处理器进行浮点数操作的过程,没有只涉及整数的运算那么直接,因为计算机需要应对不断变化的指数,将它们转化为十进制,或者从十进制转换过来,然后再舍入。
![c4743e8375c541f68156b7287dc2bb81.png](https://i-blog.csdnimg.cn/blog_migrate/b6976250a9cffbb122a514096ebb9faa.jpeg)
FLOPS对CPU和GPU的重要性
1、FLOPS对GPU的重要性
在计算机中,GPU也就是显卡对FLOPS的需求一般要比CPU高。因为GPU为了渲染出你在屏幕上看到的画面所需要做的运算中,有很多要用到的向量,用来确定每条线和每一个图形应该放在哪,要计算出这些数值需要用到很多不同的浮点数,他们的指数大小有可能天差地别。
越是复杂精密的图像,就越需要更高的FLOPS来支持。而现在游戏电脑领域所流行的高刷新率屏幕,就更需要FLOPS指数,因为更高的刷新率意味着屏幕每秒钟内需要显示更多次画面,显示更多次画面就需要更多次计算来向显示器输出画面。
这就好比一个工人每天做着定量的工作,现在突然让他每天完成原先一倍甚至几倍的工作量,该工人的身体可能会吃不消,所以他需要更强的工作能力和工作效率,这就是FLOPS。
![6199d3ad389c0ce9f34c937b572c1bea.png](https://i-blog.csdnimg.cn/blog_migrate/f0a61764c53f47f9049efbf27b31811a.jpeg)
2、FLOPS对CPU的重要性
更高FLOPS对CPU来说其实并不是那么的重要,因为普通的使用者并不需要那么高的FLOPS,除非他喜欢玩3A级游戏大作,还非要把各项设置调到最高,并且要求极高的游戏的流畅性。
当然,在某些领域,更高的FLOPS指数依旧不可或缺。比如科学研究和气象建模,超级计算机和强力工作站,它们就经常使用FLOPS来描述自己的性能以及需求,因为他们同样高度依赖浮点数运算。
![63648d86decde75e6502bb0809d0c683.png](https://i-blog.csdnimg.cn/blog_migrate/38cc8679983be86b3565d6945bf3cdee.jpeg)
虽然说了这么多有关FLOPS指数重要的话,但是这对于想要买张划算的显卡或是够用的CPU的各位,FLOPS到底意味着什么呢,我们是不是应该直接选买的起的硬件里面FLOPS指数最高的哪一款?
答案也许是不应该。
虽然更高的FLOPS指数确实代表着更高的浮点运算性能,这样就同样代表这类硬件的运算性能更好,但它也只是意味着“MHz更高的CPU”这种意识上的“更好”。就像是有人说像素更高的相机,它拍出的照片就更好一样,虽然有一定的可能,但不全面。
很多其他因素都会在让你的CPU和显卡能带来更好的体验这个问题中扮演着重要的角色,比如显存容量和带宽,它们所使用的架构,甚至玩游戏的朋友还需要考虑到驱动对你的游戏库里某款游戏优化的怎么样,这些因素往往才是影响你使用体验的关键。
除非你是个AI和大数据的研究人员,亦或是极高端的游戏玩家和对硬件性能要求极高的从业人员,否则你就没有必要两眼冒光的盯着CPU和显卡背面更高的FLOPS数值不放。