服务器 频道

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

Nehalem: ccNUMA & SMT & OS
Nehalem:ccNUMA与SMT与
操作系统

  我们已经知道多路Nehalem会形成一个ccNUMA架构,在NUMA系统中,由于本地内存的访存延迟低于远程内存的访存延迟,因此将进程分配到本地内存附近的处理器上可极大优化应用程序的性能。这就需要操作系统支持并智能地进行这样的分配。


多个Nehalem处理器之间使用MESIF协议来保持缓存一致性

 
多个核心之间是否也使用MESIF协议来保持缓存一致性呢?

  除了NUMA架构的要求外,Nehalem的SMT技术(超线程技术)也要求操作系统的支持,这是基于这样的一个事实:线程调度时在两个逻辑CPU之间进行线程迁移的开销远远小于物理CPU之间的迁移开销以及逻辑CPU共享Cache等资源的特性。这一点和NUMA上同一个CPU的不同核心之间进行线程迁移的开销远远小于多个CPU之间的迁移开销以及同核心的CPU共享Cache等资源的特性是一样的,要系统发挥最大的性能,操作系统必须对NUMA以及超线程这样的实质上比较类似NUMA的这些架构作出优化。

  传统的基于NT核心的Windows都可以支持SMP对称多处理器技术,然而它们并没有很好地为NUMA和超线程优化(这也是当初Pentium 4 HT推荐使用WIndows XP而不是WIndows 2000操作系统的原因),在购买到Nehalem系统之后,你需要采用最新的操作系统:


Windows Server 2008内核对NUMA的优化


Windows Server 2008内核对NUMA IO的优化


Windows Server 2008对逻辑处理器们的划分(Group——Processor Group是Windows Server  2008 R2/Windows 7加入的功能)

  经过多次升级的Windows Server 2003可以较好地支持NUMA技术(为了支持广泛应用的Opteron——典型的NUMA架构),Windows XP也为超线程技术做了优化,然而它们都不够Windows Server 2008深入。2008为NUMA做出了包括内存管理方面的多种优化:分布式的非分页池、系统页表、系统缓存以及内存分配策略,同时还更好地支持NUMA I/O。在使用多Nehalem或者多Opteron这样的处理器时,你应该使用Windows Server 2008操作系统或者Windows Vista操作系统(2008和Vista使用了相同的内核,区别只是一些小的特性)。甚至在使用单Nehalem的时候,你也应该使用Vista,因为超线程的缘故。

  Linux 2.4内核中的调度器由于只设计了一个运行队列,可扩展性较差,在SMP平台表现一直不理想。后来在2.5内核开发时出现一个多队列调度器(Ingo Molnar),称为O(1),每个处理器具有一个运行队列,从2.5.2开始集成。由于O(1)调度器不能较好地感知NUMA系统中结点这层结构,从而不能保证在调度后该进程仍运行在同一个结点上,为此Linux 2.6内核出现了结点亲和的NUMA调度器(Eirch Focht),建立在Ingo Molnar的O(1)调度器基础上的(这个调度器后来也向后移植到2.4.X内核中),因此现在的Linux 2.6核心可以较好地支持NUMA和超线程。

  FreeBSD的SMP功能直到7.0版本才算大为完善,就目前来看,FreeBSD对NUMA的支持还比较原始。

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评测中心观点
相关文章