在本页阅读全文(共9页)
每一代CPU性能的提升,最大的根源都是架构方面有非常大的调整。从表中对比K8架构,Barcelona可以说是加强了很多,规格几乎都是成倍的增长。首先是SSE指令执行位宽,现在被AMD称为SSE128。在K8架构处理器中,两个SSE指令是并行处理的,SSE执行单元只有64-bits宽度,一个128-bit SSE指令操作,它不得不分割成两个64-bit指令操作,同样的一个128-bit SSE指令被获取后,它被首先解码成两个微操作(micro-ops),这会给这个指令带来多余的解码部分,效率上可想而知。
Barcelona的SSE执行单元则扩充为128-bits(实际上,Intel之前对于core2也是这么做的),一个128-bit SSE指令操作可以不必分割成两个64-bit操作,这意味着更多的可利用带宽可以被使用,那个FP scheduler也可以执行这些128-bit SSE指令操作。
SSE指令执行性能提升后也带来了另外一个瓶颈:指令获取带宽(instruction fetch bandwidth),这些128-bit SSE指令变得更大,同时为了最大化并行处理的解码数量,每周期32-bytes的带宽可以很好的解决这个问题,32-bytes的指令获取除了可以带来SSE代码带来好处外,同时也给整数代码带来了好处。
在这之后CPU可以获取和解码更多的指令,你需要能更多的把数据传到核心中去处理,因此AMD也进一步提高了L1 data cache和Barcelonas SSE寄存器(registers)之间的带宽,现在Barcelona可以实现2 x 128-bit loads/cycle的性能,同时L2 cache和内存控制器的接口也被提升到128-bits/cycle后,总体上平衡了上面的改进所带来的性能瓶颈。
SSE128的加强设计,和Intel对Yonah到Merom转变过程非常相像,在Conroe/Merom之前,Yonah在FP/SSE性能方面和K8没法相比,在此前的同频率下K8和Yonah的性能测试中,各项性能都可以打成平手,只有在视频编码方面不是这样,直到Core 2到来之后,才全面超过了AMD,相信SSE128的设计将给未来的Barcelona带来不错的表现。
本文导航