英特尔Nehalem技术详解

互联网   发布时间:2009-04-21 01:32:30   作者:佚名   我要评论
  Intel 4系芯片组一经发布,双45平台便逐渐的成为了玩家们关注焦点。更为惊喜的是,几大一线厂商方面,也在通过大幅度降价的手段来吸引消费者们的注意。不过,细心的消费者们都会发现,P45芯片组与P35芯片组相比,其性能上并没有

● Nehalem新技术详解


1 .QPI总线技术

比酷睿强在哪英特尔Nehalem技术详解(2)
Nehalem QPI总线示意图

  在Nehalem之前,Intel一直使用FSB前端总线作为处理器与芯片组连接的桥梁,虽然1600Mhz的前端总线对于桌面级数据处理来说已是绰绰有余,但对于数据量庞大的服务器来说,其仍然是性能的瓶颈。Nehalem因此引入了全新的串行总线QPI,QPI总线是基于数据包传输(packet-based)。其拥有高带宽、低延迟的点到点互连技术等特点,它的传输速度可以达到每秒6.4G次数据。与FSB最大的不同在于,QPI不仅仅可以负责CPU与北桥通信,还可以实现CPU与CPU之间的相互连通。正如前文中所提到的Nehalem模块化的特点,对于不同市场的Nehalem,可以具有不同的QPI总线条数。比如桌面市场的CPU,具有1条或者半条QPI总线(半条可能是用10bit位宽或单向);DP服务器(双CPU插座)的CPU,每个具有2条QPI总线;而MP服务器(4个或8个CPU插座)的,则每个具有4条或更多的QPI总线。

2.内存控制器

  在AMD整合了内存控制器长达5年之久后,Intel终于按捺不住了。为了进一步降低处理器访问内存的延迟以提高处理器的性能,Intel也引入了内存控制器的概念。



比酷睿强在哪英特尔Nehalem技术详解(2)
Intel 整合内存控制器(IMC)示意图

  Intel的整合内存控制器(integrated memory controller),可以支持3通道的DDR3内存运行在1.33GT/s(DDR3-1333),这样总共的峰值带宽就可以达到32GB/s。三通道的DDR3内存,其每通道都能够独立操作,其处理器所集成的内存控制器需要乱序执行来降低延迟。

  不过,高性能也是有高付出的,在高端平台上,必须要三条DDR3内存才能够打开三通道,而且三通道内存也并没有加入DDR2的设计,因此用户只能够选择DDR3内存来感受内存延迟降低的快感。

3.同步多线程技术

  自从奔腾4时期开始,超线程技术便已经是家喻户晓了。在当时31级流水线的P4上面,为了提高处理器的性能,细化的流水线可以操作不同的任务进程。然而,在14级流水线下的Core上面,超线程技术消失了。不过这一切都是暂时的。因为Nehalem又重新引入了类似于·超线程技术的同步多线程技术。

比酷睿强在哪英特尔Nehalem技术详解(2)
Nehalem同步多线程技术图解

  Nehalem的同步多线程(Simultaneous Multi-Threading,SMT)是2-way的,每核心可以同时执行2个线程。这样就可以压缩多任务处理时所需要的总时间。同步多线程功能的好处是只需要消耗很小的核心面积代价,就可以在多任务的情况下提供显著的性能提升,比起完全再添加一个物理核心来说要划算得多。并且,Nehalem因为L3大缓存的设计及内存控制器的集成使之拥有了更大的缓存和更大的内存带宽,而且基于Core微架构中表现优秀的分支预测设计能够更加有效的发挥多线程的性能。

4.缓存结构

  在早期的奔腾D时代,由于2颗核心之间互相独立,因此其之间的数据调配需要通过前端总线来进行,这使得数据的处理存在非常高的延迟。在Core时代,这一情况有所好转,因为Core核心共享了L2缓存,这使得数据处理延迟大大降低。而在Nehalem上,我们又看见了一种新的缓存管理机制,包含式缓存。

比酷睿强在哪英特尔Nehalem技术详解(2)
Nehalem缓存结构


  Nehalem上,8MB的L3对于前两级来说,是完全包含式的,并且由4个核心共享,其可以处理几乎所有的一致性流量问题,而不需要打搅到每个独立核心的私有缓存。如果在L3中发生命中失败,那么要访问的数据就肯定也不在任何一个L2和L1中,不需要侦听其它内核。另一方面,Nehalem的L3对于缓存命中成功,也扮演着侦听过滤器的角色。在Nehalem的L3中的每一个缓存行里,有4 bit是用来做核心确认的,表明是哪一个核心在它的私有缓存里具有这个行的数据备份。如果一个核心确认位被设置成0,则那个核心就不具有该行的数据备份。Nehalem使用的是MESIF缓存一致性协议(MESIF cache coherency protocol),如果两个以上核心的确认位都有效(设置成1),那么该缓存行就被确定是未被修改的,任何一个内核的缓存行都不能够进入更改模式。当L3缓存命中,而4个核心确认位都是0时,就不需要对其它内核做侦听;而只有1个位是有效时,则只需要侦听那一个核心。这两种技术的联合使用,使得L3可以尽可能的让每个核心避免数据一致性错误,这样就给出更多的实际带宽。
  Nehalem的每个核心有64KB L1和256KB 必须在L3 缓存中保留数据,这就意味着在8MB的L3中,有1-1.25MB的数据是前两级缓存中也有的数据。这也恰恰就是包含式缓存额外的开销。

写在最后:

  从对Nehalem详细的技术解析来看,它无论是对Core架构的一个改进也好,还是对Core的一个全面革新,其强劲的性能飞跃已是一个不争的事实。虽然在COMPUTEX 2008展会上我们已经看见了Nehalem的工程样品的实物展示,但更进一步的详细性能测试恐怕也只有在第四季度发布之前才能够得以真正的揭晓


相关文章

最新评论