试分析一下intercore i7采用了哪些技术来提升性能。
Core i7采用原生四核设计,采用先进的QPI(QuickPath Interconnect,下面会介绍)总线进行通信,传输速度是FSB的5倍。
Cache也采用三级嵌入式cache设计,L1的设计与核心微架构相同。
L2采用超低延迟设计,每核256 KB(256×4kb);
L3采用共享设计,由片上所有内核共享,容量为8MB。
Nehalem架构与新QPI总线酷睿i7的最大改进是前端总线(FSB)。完全抛弃传统的并行传输模式,转而采用基于PCI Express串行点对点传输技术的通用系统接口(CSI),被Intel称为QuickPath。
QuickPath的传输速率是6.4Gbps,所以一个32位的QuickPath带宽可以达到25.6 GB/秒。
QuickPath的传输速率是FSB 1333MHz的5倍。虽然前者的数据位宽度较窄,但传输带宽仍然是后者的2.5倍。
Gainestown有两个QuickPath,而Bloomfield只有一个,因为它分别用于双处理器和单处理平台。
不难看出,在AMD推出HyperTransport高速串行总线并逐渐在高性能计算领域建立优势后,英特尔也迎头赶上。
几年前,串行传输将主宰世界的预言实现了。我们要等待的是串行存储器何时回归市场。
相信大家对集成内存控制器都不会陌生。早在K8时代,竞争对手AMD就已经将内存控制器集成到CPU中,可以大幅提升内存性能,而英特尔则表示,由于时机不对,没有在Core2中使用。现在最新的酷睿i7终于有了集成内存控制器(IMC),可以支持三路DDR3内存,运行在DDR3-1333,内存位宽从128位提升到192位,所以总峰值带宽可以达到32GB/s,是酷睿2的2-4倍。
处理器采用集成内存控制器后,可以直接与物理内存阵列相连,大大降低了内存延迟。
同步多线程技术原生四核酷睿i7有八个逻辑核的超线程技术,最早出现在130nm的奔腾4上。超线程技术通过使用特殊的硬件指令,将两个逻辑核模拟成两个物理芯片,使单个处理器可以使用线程级并行计算,然后兼容多线程操作系统和软件,减少了CPU的空闲时间,提高了CPU的运行效率。
超线程技术让奔腾4单核CPU拥有出色的多任务处理性能,现在又通过改进的超线程技术回归到酷睿i7处理器,新命名为同步多线程(SMT)。
同步多线程(SMT)是双向的,每个内核可以同时执行两个线程。
对于执行引擎来说,在多线程任务的情况下,可以屏蔽单线程的延迟。
SMT功能的优势在于,只需要很小的核心面积成本,就可以在多任务的情况下提供显著的性能提升,比完全增加一个物理核心要划算得多。
与奔腾4的超线程技术相比,Core i7的优势在于拥有更大的缓存和更大的内存带宽,从而可以有效发挥多线程的作用。
根据英特尔的说法,Nehalem的SMT可以在几乎不消耗能源的情况下将性能提高20-30%。
Core 2为什么不用SMT?
显然,这是可以做到的。
SMT在省电的基础上提升性能,软件支持的基础设施早已有之。
可能有两个原因:第一,Core 2可能没有足够的内存带宽和CPU内部带宽来利用SMT。
通常,SMT可以提高存储器级并行性(MLP ),但是对于已经成为存储器带宽瓶颈的系统来说,这是一个问题。
更可能的原因是SMT的设计和有效性非常麻烦。当初SMT的设计是由INTEL的Hillsboro团队主持,而不是Haifa团队(Core 2负责这个团队)。
通过这种方式,Core 2避免了在不使用SMT的情况下冒险。
自动超频和核心加速Turbo模式,顾名思义就是加速模式。它是一种基于Nehalem架构的电源管理技术。通过分析当前的CPU负载,它智能地关闭一些未使用的核心,将能量留给正在使用的核心,并使它们以更高的频率运行,以进一步提高性能。
相反,当需要多个内核时,动态开启相应的内核,智能调节频率。
这样就可以在不影响CPU TDP的情况下,将核心工作频率调得更高。
举个简单的例子,如果游戏中只使用了一个核心,Turbo模式会自动关闭其他三个核心,提高运行游戏的核心频率,也就是自动超频,在不浪费能量的情况下获得更好的性能。
在Core 2时代,即使你运行一个只支持一个核心的程序,其他核心依然会全速运行,不但不能提升性能,还会造成能量的浪费。
默认开启睿频加速,通过自动提高CPU的倍频来提升性能。
在Intel原来的X58主板上,低负载时默认增加1-2个八度。
比如Core i7 920默认主频2.66G,默认开启睿频加速时,Super PI运行在2.8G的单核,这样单线程的性能得到提升。
超频爱好者可能认为Turbo模式自动调高的频率可以手动调节。
如果可以的话,可以用来超频。
答案是肯定的。只要是Exterme版CPU,都可以手动调整,好好利用,一种新的超频方式诞生了。
文本处理速度再次加快。
完整的SSE4指令支持完整的SSE 4(流SIMD扩展4,单指令多数据扩展)指令集,包含54条指令,其中47条已经在45nm Core 2上实现,称为SSE 4.1。
SSE 4.1指令的引入,进一步提升了CPU在视频编解码、图形处理、游戏等多媒体应用中的性能。
其他七条指令也在Core i7中实现,称为SSE 4.2。
SSE 4.2是对SSE 4.1的补充,主要针对XML文本的字符串操作,CRC32的存储和验证等。