» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[转贴]几款热门CPU的真实浮点性能,自己看吧

楼上的,乱序执行跟SPE调度没关系的。PPE不支持乱序执行是为了降低PPE的复杂度,将更多的DIE SIZE用在SPE上。
不过上面的评测结果很对,双精度是CELL最大的弱点,这个跟当初设计CELL的初衷有关,最开始IBM做CELL的动机很简单,就是给PS3定制芯片。对于游戏来说单精度完全够用,所以CELL的架构是完全为单精度运算优化。
不过现在IBM的态度已经转变了,专门成立了部门开发基于CELL的下一代服务器平台,下一代的CELL也已经在开发中,将特别强化双精度运算以运用在科学计算、财经、医疗等领域。


TOP

汗,啥时候整数性能跟乱序执行搭关系了。。。乱序执行是为了提高Instruction Level Parallel,SPE不光是没有乱序执行,连分支预测都没有。。一个branch乱跳就会刷流水线。。不过SPE的超大register file配合编译器优化(循环展开)一定程度上可以解决这些问题。毕竟SPE还是一个典型的向量执行单元,本来就不是为这种需要大量控制结构的程序优化的。
另外,楼上的好像有点误解是SPE执行浮点运算,PPE执行整数运算?这个理解是错误的。SPE是向量运算引擎,整数运算和浮点运算都是同样支持的,通常情况下PPE只是用来运行操作系统,以及如上面所说的,运行那些需要大量条件判断的代码。整数运算浮点运算都是SPE做,整数运算能力并不残废。
其实CELL的真正强的地方大概很多人都没有注意,是SPE里边那个256k的Local Store。正确的使用SPE的DMA引擎配合Local Store,CELL可以达到非常高的数据处理效率。



TOP

cxj3000在上个帖子中说
引用:
普通的整数运算程序通常包含大量LOAD/STORE指令和分支,如果没有OOO,在这种情况下,PPE的整数运算表现肯定会远远低于理论值~

至于SPE,如果处理那种并行度很高的整型运算,当然也行,但PS3上有这种运算的需求吗?在PS3上,SPE的主要工作,就是做物理运算吧,SPE确实是一个典型的向量单元。仅此而已。

有大量LOAD/SAVE的代码正好是SPE的强项,那个256k的Local Store + DMA非常有效。访问LS只需要几个CYCLE,而访问内存是要几百个CYCLE的。
SPE是一个向量单元,但是不是象楼上说的只做物理运算。这样子讲吧,SPE的向量运算引擎可以看作是一个加强了很多的Pentium里边的SSE或者AMD里边的3DNow。比如说MPEG4解码,象iDCT、MC等等都是PPE的强项,而VLD就难做了,因为里面会有很多分支的指令。


TOP

发新话题
     
官方公众号及微博