服务器 频道

曙光Nehalem-EP服务器I620r-G深度评测

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个时钟周期

0
第1页:Nehalem-EP处理器:曙光I620r-G服务器发布第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和QPI第14页:深入Nehalem微架构:ccNUMA与HTT第15页:深入Nehalem微架构:ccNUMA、SMT与OS第16页:深入Nehalem微架构:虚拟化第17页:深入Nehalem微架构:SSE4.2指令集第18页:深入Nehalem微架构:制造工艺第19页:深入Nehalem微架构:长沟道晶体管技术第20页:深入Nehalem微架构:能耗比控制第21页:小结:Nehalem架构的优势第22页:Nehalem-EP:处理器规格对照表 第23页:Nehalem座驾:Tylersburg芯片组第24页:Nehalem座驾:Tylersburg规格第25页:实物图:Nehalem-EP Xeon第26页:实物图:Nehalem-EP Xeon第27页:实物图:Tylersburg-EP芯片组第28页:实物图:曙光Nehalem-EP服务器I620第29页:实物图:曙光Nehalem-EP服务器I620第30页:实物图:曙光Nehalem-EP服务器I620第31页:实物图:曙光Nehalem-EP服务器I620第32页:测试环境与测试方法第33页:曙光I620r-G服务器测试平台第34页:软件测试信息、系统部件简介第35页:SiSoftware Sandra 2009处理器性能测试第36页:SiSoftware Sandra 2009缓存性能测试第37页:SPEC CPU 2006整数性能测试第38页:SPEC CPU 2006浮点性能测试第39页:ScienceMark缓存内存子系统性能测试第40页:CineBench R10性能测试第41页:Iometer磁盘子系统性能测试第42页:NetBench文件服务器性能测试第43页:Benchmark Factory数据库性能测试 第44页:超线程能力对比测试:SiSoftware Sandra第45页:超线程能力对比测试:ScienceMark第46页:超线程能力对比测试:CineBench第47页:超线程能力对比测试:Iometer第48页:超线程能力对比测试:NetBench第49页:超线程能力对比测试:Benchmark Factory第50页:超线程能力对比测试:SPEC CPU 2006整数第51页:超线程能力对比测试:SPEC CPU 2006浮点第52页:平台功耗测试第53页:IT168评测中心观点
相关文章