服务器 频道

Intel Nehalem-EP处理器首发深度评测

Click Here

The Memory sub-System: Cache
内存子系统:缓存

  与Core 2相比,Nehalem新增加了一层L3缓存,这是为了多个核心共享数据的需要(Nehalem-EX具有8个核心),也因此这个L3的容量很大。出于消除多核心共享数据的压力,前面的缓存不能让太多的缓存请求到达L3,而且L3的延迟(约30~40个时钟周期)和L1的延迟(3~4个时钟周期)相差太大,因此L2是很有必要的。Nehalem简单地在很小的L1和大尺寸的L3之间插入256KB的L2来起到中继的作用——中继具有两个方面的含义:容量和延迟。256KB不算大,可以维持约低于10个时钟周期的延迟。Nehalem的L2和L1不是包含也不是非包含的关系。

  通常缓存具有两种设计:非独占和独占,Nehalem处理器的L3采用了非独占高速缓存设计(或者说“包含式”,L3包含了L1/L2的内容),这种方式在Cache Miss的时候比独占式具有更好的性能,而在缓存命中的时候需要检查不同的核心的缓存一致性。Nehalem并采用了“内核有效”数据位的额外设计,降低了这种检查带来的性能影响。随着核心数目的逐渐增多(多线程的加入也会增加Cache Miss率),对缓存的压力也会继续增大,因此这种方式会比较符合未来的趋势。在后面可以看到,这种设计也是考虑到了多处理器协作的情况(此时Miss率会很容易地增加)。这可以看作是Nehalem与以往架构的基础不同:之前的架构都是来源于移动处理设计,而Nehalem则同时为企业、桌面和移动考虑而设计。 

  在L3缓存命中的时候(单处理器上是最通常的情况,多处理器下则不然),处理器检查内核有效位看看是否其他内核也有请求的缓存页面内容,决定是否需要对内核进行侦听:


笔者相信这一点是不对的:假如一个L3页面被多个内核共享(多于一个有效被设置为1),那么这个处理器的该页面就不能进入Modified状态

  基于后面的NUMA章节的内容,多个处理器中的同一个缓存页面必定在其中一个处理器中属于F状态(可以修改的状态),这个页面在这个处理器中没有理由不可以多核心共享(可以多核心共享就意味着这个能进入修改状态的页面的多个有效位被设置为一)。笔者相信MESIF协议应该是工作在核心(L1+L2)层面而不是处理器(L3)层面,这样统一处理器里多个核心共享的页面,只有其中一个是出于F状态(可以修改的状态)。见后面对NUMA和MESIF的解析。

  在L3缓存未命中的时候(多处理器下会频繁发生),处理器决定进行内存存取,按照页面的物理位置,它分为近端内存存取(本地内存空间)和远端内存存取(地址在其他处理器的内存的空间):

Cache Miss时而页面地址为本地的时候,处理器进行近端内存访问
延迟取本地内存访问和远程CPU Cache Hit的延迟的最大值

Cache Miss时而页面地址为远程的时候,处理器进行远端内存访问
延迟取远程内存访问和远程CPU Cache Hit的延迟的最大值 

近端访问约60个时钟周期,远端访问约90个时钟周期(据说仍然比Harptertown Xeon快),本地L3 Cache Hit则为30个时钟周期

1
第1页:Intel Nehalem-EP处理器首发深度评测第2页:Nehalem:Tick-Tock战略的产物第3页:Nehalem设计思想的转变:基于企业应用第4页:深入Nehalem微架构:核心区间划分第5页:深入Nehalem微架构:指令拾取第6页:深入Nehalem微架构:解码与循环流检测第7页:深入Nehalem微架构:乱序执行引擎第8页:深入Nehalem微架构:乱序执行单元第9页:深入Nehalem微架构:乱序存取单元第10页:深入Nehalem微架构:乱序存取单元第11页:深入Nehalem微架构:缓存子系统第12页:深入Nehalem微架构:缓存子系统第13页:深入Nehalem微架构:核外系统/IMC第14页:深入Nehalem微架构:核外系统/QPI第15页:深入Nehalem微架构:ccNUMA架构第16页:深入Nehalem微架构:超线程技术第17页:深入Nehalem微架构:ccNUMA、SMT与OS第18页:深入Nehalem微架构:虚拟化第19页:深入Nehalem微架构:SSE4.2指令集第20页:深入Nehalem微架构:制造工艺第21页:深入Nehalem微架构:长沟道晶体管技术第22页:深入Nehalem微架构:能耗比控制第23页:深入Nehalem微架构:能耗比控制第24页:小结:Nehalem架构的优势第25页:Nehalem-EP:处理器规格对照表 第26页:Nehalem座驾:Tylersburg芯片组结构第27页:Nehalem座驾:Tylersburg芯片组PCIExpress第28页:Nehalem座驾:Tylersburg芯片组QPI第29页:Nehalem座驾:Tylersburg芯片组其它特性第30页:Nehalem座驾:四种Tylersburg规格对照表第31页:实物图:Nehalem-EP最高型号Xeon X5570第32页:实物图:Tylersburg-EP芯片组第33页:实物图:Intel Nehalem-EP测试样机第34页:实物图:Intel Nehalem-EP测试样机第35页:实物图:Intel Nehalem-EP测试样机第36页:实物图:Intel Nehalem-EP测试样机第37页:测试环境与测试方法第38页:Nehalem-EP服务器对比测试平台第39页:软件测试信息、系统部件简介第40页:SiSoftware Sandra 2009处理器性能测试第41页:SiSoftware Sandra 2009缓存内存性能测试第42页:SPEC CPU 2006整数性能测试第43页:SPEC CPU 2006浮点性能测试第44页:ScienceMark缓存内存子系统性能测试第45页:CineBench R10性能测试第46页:Iometer磁盘子系统性能测试第47页:NetBench文件服务器性能测试第48页:Benchmark Factory数据库性能测试第49页:超线程能力对比测试:SiSoftware Sandra第50页:超线程能力对比测试:ScienceMark第51页:超线程能力对比测试:CineBench第52页:超线程能力对比测试:Iometer第53页:超线程能力对比测试:NetBench第54页:超线程能力对比测试:Benchmark Factory第55页:超线程能力对比测试:SPEC CPU 2006整数第56页:超线程能力对比测试:SPEC CPU 2006浮点第57页:Nehalem-EP平台功耗测试第58页:IT168评测中心观点
相关文章