浮点运算就是实数运算,因为计算机只能存储整数,所以实数都是约数,因此浮点运算很慢,而且会有误差。
浮点运算性能可以直观地反映一台计算机的计算能力,真正对浮点要求高的是压缩,场景的渲染,光散射的计算等,浮点运算不需要太多的缓存,缓存是用来存放中间数据的,浮点运算要求尽可能的即时完成。
相反,分支预测对缓存要求很高,需要存储很多东西以供判断。
浮点运算性能可以直观地反映一个cpu的计算能力,注意是“计算能力”,可是学过编程的人都知道,占代码量80%的是由if ,while, for 等等构成的分支语句,这些语句对cpu的浮点运算要求不高,可以说没什么要求,但要求有大量的分支预测机制,以加快速度。真正对浮点要求高的是视频压缩,场景的渲染,光散射的计算等等,索尼原本计划用两颗cell来制作ps3,最后由于功耗问题不了了之。有些朋友说cell里面的协处理器没有缓存性能差,这也是不对的,浮点运算不需要太多的缓存,缓存是用来存放中间数据的,浮点运算要求尽可能的即时完成,就像GPU里也没多少缓存一样;相反,分支预测对缓存要求很高,需要存储很多东西以供判断。
ps3的浮点能力高不容置疑,但是大家可以参考一下dsp的处理能力就知道了,dsp将数据和指令分别存放,互不影响,这和cpu的架构有质的不同,dsp的处理任务都要求必须在极端的时间内完成,这个时间通常有明确的限制,不然就没有意义,大家可以遇到的dsp有很多,比如高端声卡里的主芯片,手机里的cpu都是,他们的浮点能力比之高端cpu不见得弱多少,但他们的处理能力单一,单一造就了高效率。
ps3里的RSX实际上是G70的阉割版,而X360里的图形芯片性能根1950XT差不多,但是决定游戏画质的重要因素是软件的优化,针对PC的游戏引擎由于要考虑到各种不同的显卡,所以效率很差,PC上的部件来不及发挥其全部潜能就被抛弃了。
1,Giga简称G,是表示数量的前缀,表示10^9,即10亿,比如9G,就是90亿。,2,表示浮点运算能力的单位是FLOPS(即“每秒浮点运算次数”,“每秒峰值速度”),而非“Float”。是“每秒所执行的浮点运算次数”(floating-point operations per second) 的缩写。它常被用来估算电脑的执行效能,尤其是在使用到大量浮点运算的科学计算领域中。因为 FLOPS 字尾的那个 S,代表秒,而不是复数,所以不能省略掉。
在这里所谓的“浮点运算”,实际上包括了所有涉及小数的运算。这类运算在某类应用软件中常常出现,而它们也比整数运算更花时间。现今大部分的处理器中,都有一个专门用来处理浮点运算的“浮点运算器”(FPU)。也因此 FLOPS 所量测的,实际上就是 FPU 的执行速度。而最常用来测量 FLOPS 的基准程式 (benchmark) 之一,就是 Linpack。
3,GigaFLOPS即每秒10亿次浮点运算,也是是描述计算机浮点运算能力的单位,现在的主流CPU一般在20-60 GFLOPS之间。
本站内容仅供参考,不作为诊断及医疗依据,如有医疗需求,请务必前往正规医院就诊
祝由网所有文章及资料均为作者提供或网友推荐收集整理而来,仅供爱好者学习和研究使用,版权归原作者所有。
如本站内容有侵犯您的合法权益,请和我们取得联系,我们将立即改正或删除。
Copyright © 2022-2023 祝由师网 版权所有