从CPU架构和技术的演变看GPU未来发展
高频低能的Pentium 4和Pentium D苦苦抵抗Athlon 64和Athlon 64 X2疯狂进攻的同时,Intel也在秘密研发新一代Core微处理器架构,全新的Core 2 Duo虽然没有整合内存控制器,但凭借高效率、低层级流水线和融合大量先进技术的指令架构,Core 2 Duo一举击败Athlon 64 X2成为新的性能之王。
当然,Intel还有另外一项创新性的技术也助Core 2 Duo一臂之力,拉大与对手的优势,它就是Intel Advanced Smart Cache(高级智能缓存技术),简单来讲就是多颗处理器核心共享大容量缓存,通常被称为共享式大容量二级缓存。
传统的双核心设计每个独立的核心都有自己的L2,但Intel Core微架构则是通过核心内部的Shared Bus Router共用相同的L2,当CPU 1运算完毕后把结果存在L2时,CPU 0便可通过Shared Bus Router读取CPU 1放在共用L2上资料,大幅减低读取上的延迟并减少使用FSB带宽,同时加入L2 & DCU Data Pre-fetchers及Deeper Write output缓冲存储器,大幅增加了缓存的命中率。
与AMD K8双核心L2架构相比,CPU 0需要读取CPU 2 L2中数据时,首先需要向系统总线发出需求,并通过Crossbar Switch就把取读资料,但CPU 0发现读取自己的L2没有所要的数据才会要求读取CPU 1的L2资料,情况等同于CPU 0的L3,而共享式的L2设计却没有以上需要。
Smart Cache架构还有很多不同的好处,例如当两颗核心工作量不平均时,如果独立L2的双核心架构有机会出现其中一颗核心工作量过少,L2没有被有效地应用,但另一颗核心的L2却因工作量过重,L2容量没法应付而需要传取系统内存,值得注意的是它并无法借用另一颗核心的L2空间,但SmartCache因L2是共用的而没有这个问题。
共享式L2不但能够减少两颗核心之间读取缓存数据的延迟、提高数据命中率,而且还能有效提高缓存利用率,避免分离式缓存存放重复数据的可能,变相提高的缓存容量。Intel上代的Core 2 Duo和Core 2 Quad至今在性能方面并不输给AMD的Phenom II系列处理器,其中共享式二级缓存设计功不可没。
★ 共享式三级缓存已成为主流:
共享式二级缓存固然拥有诸多优势,但需要对传统CPU架构进行大幅调整,双核心还算容易、多核心就比较麻烦了,缓存的存取机制都需要完全重新设计。因此AMD另辟蹊径,在保持现有二级缓存不变的情况下,直接新增大容量的三级缓存,从而为多核提供协同运算的高速暂存数据仓库。
AMD初代的Phenom四核处理器就采用了共享式三级缓存设计,每颗核心的一级缓存保持不变,二级缓存都是独立的512KB,三级缓存为一体式的2MB。而到了Phenom II代,45nm工艺使得处理器能够整合更大容量的缓存,于是L3倍增至6MB,性能提升非常明显。
Core i7 Die示意图
Intel在Core 2 Quad之后,也在酝酿全新的原生四核产品,此次Intel集所有先进技术于一体,不仅整合了内存控制器,而且引入了比AMD HT更先进的QPI总线,还引入了共享式三级缓存,容量高达8MB,比Phenom II还多2MB。
至于低端的双核Core i3/i5处理器,Intel为了保持架构统一,也放弃了Core 2上面的共享二级缓存设计,每颗核心仅有256KB的独立L2,而是植入了4M容量的L3,虽然总缓存容量不如E8X00系列的6MB L2,但性能上还是取得了长足的进步。
此后,32nm工艺的引入使得Intel可以在单一芯片之中集成更多的核心和更大的缓存,所以我们看到i7-980X拥有六颗物理核心以及高达12MB的L3,性能更上一层楼,令人叹为观止!