性能,更要节能:Xeon能耗比新星
Nehalem同样也是采用54nm制造工艺,这与以往的Xeon 5400是完全相同的。按照我们以往的测试经验,在处理器制造工艺没有提升的前提下,更复杂的架构、更多的晶体管数、更高的性能就意味着更大的功耗。在绿色环保概念盛行的今天,如果一款处理器即便拥有再高的性能,而在功耗控制上一无是处,它也会倍受攻击而逐步堕入深渊。令人欣慰的是,英特尔并没有重复Pentium 4上所犯的错误,在Nehalem上我们看到了诸多技术用于处理器的电源、功耗控制。通过我们的测试证明,Nehalem在提供更为强劲性能的同时,也成为Xeon系列处理器中对功耗控制做的最为出色的一款。
Nehalem是英特尔第一款采用直连架构以及内置内存控制器的产品。作为网络服务器的提供者,服务器通常都会面临高负载下的多任务运算,而采用直连架构以及内置内存控制器则是有效提高处理器运行效率的手段。如果有人说英特尔不过是在跟随AMD脚步也没什么,对于用户来说所关心的无非是产品的实际使用效果而不是所谓的技术领先。在英特尔的产品说明中将处理器分为了Core以及Uncore两部分,Core顾名思义就是表示处理器核心,而Uncore部分则包括了L3缓存、QPI、IMC以及电源控制器。Nehalem支持DDR3内存,而内置内存控制器的结构也消除了处理器与内存之间的瓶颈。为了满足不同应用环境的需求,Nehalem可以支持DDR3 800、1066以及1333规格内存,而每个处理器则都有3个内存通道。关于Nehalem QPI、内存控制器等部分的详细介绍,请参看《个人电脑》2008年第11期,或者我们的网站http://www.pcpro.com.cn/pcpro//2009/0309/1354151.shtml。
架构的变化除了给Nehalem带来性能提升外,对服务器的结构设计也更为灵活。英特尔对应Nehalem的服务器芯片组是Tylersburg系列芯片组,其中包括Tylersburg-36D和Tylersburg-24D以及Tylersburg-36S和Tylersburg-24S。它们在结构上没有太大差异,主要区别是在于QPI以及PCI Express的通道数目上。我们在服务器平台上看到的将更多是支持2个QPI通道以及36或24个PCI Express通道的Tylersburg-36D和Tylersburg-24D。
|
如果是四路服务器平台,那么直连架构给服务器带来的性能提升将会更为明显。由于每个处理器都是拥有自己的内存控制器,这样就避免了以往多处理器竞争内存带宽的情况,而且像下图中所显示的那样,这种交叉连接方式将使数据直接在处理器之间进行交互。
通常情况下服务器都是采用一套芯片组来支持多个处理器,对于Nehalem平台来说,由于直连架构以及QPI的采用,厂商可以根据用户的需求来提供更为灵活的设计,比如为了满足对PCI Express扩展的需求,可以采用两个Tylersburg-36D提供高达78个PCI Express通道(6个2.5GHz Gen 1, 72个5GHz Gen 2)。
Nehalem的功耗控制
在众多新技术、架构的支持下,我们丝毫不怀疑Nehalem的性能表现。对于一款采用了23亿个晶体管、45nm制造工艺,并且内置内存控制器的处理器,我们对Nehalem在实际应用中的功耗控制更为感兴趣。英特尔送测样机采用了两颗Xeon 5570处理器以及24GB内存,按照我们以往的经验,这样一台服务器的空载功耗就要超过200W,而实际测试却证明了这台服务器在空载待机时的功耗只有175W,而我们的Xeon 5472服务器的待机功耗则达到了310W,两者之间的差距令人吃惊。 #p#page_title#e#
Nehalem是英特尔第一款采用直连架构的处理器 |
对于四路服务器,Nehalem的这种交叉连接方式更为实用。 |
整个处理器可以分为Core和Uncore两部分 |
Tylersburg-36D可以提供36个PCI Express通道 |
如果需要更多的PCI Express,可以通过双芯片来实现最多78个PCI Express通道。 |
PCU是Nehalem中最有特点的组成单元 |
Power Gate可以控制每个核心在独立的电压/时钟频率下工作 |
在Tylersburg-36的芯片组中,也同样设置了一个管理引擎来提供对智能功耗控制的支持。 |
Turbo Mode通过改变核心工作状态来提升程序的应用效率 |
在Nehalem处理器中,采用了一个独立单元PCU(Power Control Unit)对处理器的负载率、温度等信息进行监控,而包括Power Gate这些技术,则实现了对处理器内每个核心的状态控制。Nehalem可以根据应用程序的需求来开/关处理器的单个核心,而且可以控制每个核心在独立的电压/时钟频率下工作。在处理器的负载非常低的时候,Nehalem甚至可以允许单个处于闲置状态的核心(idle Core)的功耗降到接近0W,并且实现了超低漏电量以减少不必要的功耗损失。
|
在我们以往所测试过的服务器产品中,服务器的功耗表现基本只有两种,待机、满载。由于应用程序的不同,服务器在满载时候的功耗的确会略有差异,这主要是由于磁盘访问而引起的,但是不会像Nehalem那样随着系统负载的变化而出现功耗的大幅波动。Nehalem的处理器工作状态可以有15个级别,这就意味着它可以在PCU的控制下随时调整处理器的频率以及电压。只要系统的负载有所下降或者上升,Nehalem就能实时的进行调整来同时满足性能、功耗控制双方面的需求。在测试中通过控制系统的负载量,我们也明显发现Nehalem服务器的功耗有着较大的变化。除了Nehalem处理器具有很好的功耗控制外,与之对应的Tylersburg-EP芯片组在功耗上也比较低。Tylersburg-36D的设计TDP是27W, ICH9为4.3W,而Tylersburg-36D的空载功耗则只有8W。
Turbo Mode
Nehalem对处理器内每个核心的状态控制这一特性,除了可以提供更好的功耗控制,另外也实现了对处理器的性能提升。熟悉汽车的读者都会知道涡轮增压技术(Turbo),借助该技术,我们可以在较小排量的发动机上实现更大的功率、扭矩输出,而英特尔也为Nehalem提供了类似的技术匹配—Turbo Mode。在图中可以比较明显的看出,Turbo Mode很像是英特尔的官方超频设置。处理器会根据应用的需求关闭一些不需要的核心,而将部分核心的频率进行提升以满足应用程序的需求。与Hyper Threading不同的是,Turbo Mode提供的是实打实的频率提升,而不是像Hyper Threading那样只是改善运行效率。不过可以放心的是,Turbo Mode会在Nehalem规定的TDP下运行,不会对处理器的散热造成任何麻烦,这比我们自己DIY时候的超频要安全的多。如果你真的不放心,也可以在服务器的BIOS中将Turbo Mode关闭。 #p#page_title#e#
测试
除了常规的性能测试以外,我们这次针对Nehalem的测试主要集中在功耗以及功耗/性能比方面。我们所测试的Nehalem 1U样机采用了两颗Xeon 5570处理器、24GB内存。性能测试在Windows 2003以及Windows 2008 64位下进行,而功耗测试则在Windows 2003下完成。对比平台为一台双路Xeon 5472服务器。
Xeon 5472在Transaction Rate 700时就已经到达性能峰值,此时的功耗为390W,而Xeon 5570的Transaction Rate峰值为1400,最大功耗也只有315W。从曲线中可以看出,Xeon 5472的功耗不会随着系统负载的改变而有显著变化,而Xeon 5570所体现出的功耗控制更为灵活、有效。 |
从曲线中可以看出,当Transaction Rate为700时,Xeon 5472就已经达到了系统的峰值性能,此后随着负载的增加,Xeon 5472并不能进一步的提高HTTP Requests成绩。Xeon 5570的峰值在Transaction Rate为1200时出现,其成绩也远远领先于Xeon 5472,可见新结构带来的性能提升是极为明显的。 |
为了对服务器的负载进行比较精确的调整,我们使用IXIA 400T网络测试仪作为测试负载生成端。IXIA 400T可以模拟20000个用户连接服务器,测试中IXIA400T会以每4个用户一组逐步递增,直至到达预先设定的最大用户数,对于一般我们所测试的双路或四路服务器已经足以生成足够的负载压力。
使用网络测试仪作为功耗测试手段,主要是因为我们平时所使用的Benchmark测试软件都无法对系统负载进行精确的控制。Benchmark软件在测试时运行的是预置的脚本程序,其中涉及到多种程序的运行、切换,期间系统的负载也是在不断变化。而且我们希望通过不同的“系统”负载作为测试的基准点,而不是单纯的处理器占用率。
在测试时候,我们在Nehalem服务器上搭建了一个ASP+MySQL平台,使用IXIA 400T模拟用户发送HTTP请求,这样我们所得到的测试成绩就可以视作服务器的一个整体成绩,而并非仅仅是处理器性能成绩。在IXIA 400T所使用的ixload软件中,测试人员可以自由控制连接到服务器的用户数、Request、Transaction Rate、Connection Rate等参数,从而获得不同的负载压力。
在针对Nehalem的功耗测试中,我们通过调整Transaction Rate来控制整个服务器的负载水平。通过预测试,这台Nehalem的测试曲线到达峰值时候,Transaction Rate为1400,我们将该数值作为满载功耗的基准点,以200为单位逐步减少对Nehalem的负载,从而得出不同服务器系统负载下的功耗。为了有所对比,我们也使用相同的方法对另外一台配备了双路Xeon 5472的服务器进行了测试。
从曲线图中可以看出,当服务器负载在逐步下降时候,Nehalem服务器的功耗也明显降低,而作为对比的Xeon 5472服务器所体现出的功耗下降趋势则要弱的多。为了验证Turbo Mode对功耗的影响,我们在关闭了Turbo Mode后进行了相同的测试。从结果来看,Turbo Mode只是在服务器负载较高时候才会略微增加系统功耗,当Transaction Rate为1400和1200时候,关闭/开启Turbo Mode情况下服务器的功耗为280W和315W、276W和306W,而且性能成绩也有所降低。不过随着系统负载的进一步降低,Transaction Rate在1000或者更低时候,系统已经不处于高负载状态下,此时Turbo Mode的开启或关闭所得到的性能、功耗成绩是基本相同的。
Hyper Threading是Nehalem一个重要特性之一,通过我们在测试中开启、关闭Hyper Threading发现,在我们所搭建的网络测试环境中,Hyper Threading的确对服务器的性能有10-20%的性能提升。不过在系统负载较大的时候,开启Hyper Threading也会增大服务器的功耗,其幅度在10-15%左右。 #p#page_title#e#
虽然说Nehalem的Turbo Mode、Hyper Threading都是以提升处理器功耗来获得更高的性能,但是Nehalem服务器在功耗控制上的优势是不容置疑的。在表格中也可以看到,无论是与Xeon 5472还是低功耗的Xeon 5420,Nehalem样机的功耗都有很大的降低。不过需要提醒的是,以往Xeon 5400以及Xeon 5300系列处理器所配备的都是FB-DDIMM,这种内存虽然性能不错,但是功耗却远远高于目前Nehalem所使用的DDR3。
由于测试周期所限,我们无法在本期杂志截稿之前完成所有的性能测试项目,在下期杂志中,我们将继续为读者刊登Nehalem服务器的其他性能测试成绩。