16核心有多强 AMD推土机服务器全球首测

2011年11月14日,AMD 公司在北京宣布发布并立即上市AMD皓龙6200和4200系列处理器(产品代号分别为“Interlagos” 和 “Valencia”)。时隔几个月,我们收到了AMD方面送测的首台基于“ Bulldozer”(推土机)架构、搭载皓龙6274处理器的双路平台,这也是目前为数不多的基于AMD平台的服务器。经过多日的运行与实测,现将测试报告公布如下。

AMD全球副总裁兼商用事业部总经理Paul Struhsaker揭晓全球首款16核x86处理器的细节

AMD高级副总裁,首席信息官Mike Wolfe介绍AMD云计算策略

作为AMD多年以来潜心研发的产品,推土机这一代新架构具备了诸多行业领先性的特征,而其代表性的双核心模块化架构更是业内首创。正如发布会中, AMD全球副总裁兼商用事业部总经理Paul Struhsaker所说的那样:“我们的行业正处于一个新的接合点,虚拟化已经带来更加可靠的整合,而企业正寻求通过云计算实现更高的灵活性和效率。我们为此设计了全新的AMD皓龙处理器,最值得期待的新服务器产品和架构已经到来,新一代AMD皓龙处理器以最全面的产品线,带来性能、可扩展性和能效的完美平衡。基于此,领先的OEM厂商可以为云计算、企业用户和高性能计算(HPC)客户提供一整套解决方案。”

云技术之“芯” 新皓龙规格及特性解析

新一代AMD Bulldozer介绍

本次发布的皓龙系列分为‘Interlagos’(英特拉格斯)和‘Valencia’(巴伦西亚)两个型号,其中Interlagos是面向双路及四路的高端产品,而Valencia则是面向双路的产品。本次,我们接到的服务器基于皓龙6274处理器,使用高端配置更能够体现出推土机的实际性能。至于皓龙6200系列究竟有哪些革新?大家请继续往下看。

AMD的“Bulldozer”是在K10之后推出的全新一代处理器架构,对AMD来说,这是自K7以来AMD处理器架构的一次根本性变革,在核心架构及功能性商都较K10有较大的改变。相对于目前AMD主流处理器的架构,Bulldozer核心最大的亮点就是引入了模块化设计,这让处理器在功能更加灵活的基础上更容易控制成本。

前世今生,皓龙Bulldozer最新细节曝光

皓龙推土机架构图

皓龙Bulldozer架构细节分析皓龙Bulldozer架构细节分析皓龙Bulldozer架构细节分析皓龙Bulldozer架构细节分析

Up to 8 Compute Units (CUs) with 2 cores per CU——在新一代的皓龙推土机架构中,每两个核心组成一个单独的计算单元(Compute Unit),最多有8个这样的CU模块出现,也就是说皓龙推土机最高可以具备16个核心。这是一个独创的设计,有了CU,无论是双核、四核、八核甚至更多核心都可以信手拈来。

同时,处理器使用四种不同的缓存加速指令执行和数据加工:L1指令缓存,L1数据缓存,计算单位共享二级缓存,共享L3缓存芯片(平台支持)。

除此之外,推土机架构的皓龙处理器包含一系列保障预测数据缓存与128位端口。这是一个写入缓存,支持多达128个字节负荷周期。它分为16组,每组16个字节宽。此外,该级缓存是保护单个位错误并使用奇偶校验。有一个硬件预取器,所带来的数据到数据缓存避免错过。L1数据缓存有一个冲程load-to-use延迟数据缓存。

推土机架构中的另一个新元素就是采用了基于集群的多线程技术。推土机的内核模块是一个可以同时运行两个线程的处理组件,两个内核可以执行两个完全不会相互干扰的线程。

推土机架构多线程技术

尽管双核、多线程和推土机在线程并行执行方面是相同的,但是内核的分区却截然不同。多线程就是在一个单个的处理核心内同时运行多个工作线程的技术,和CMP芯片多处理器技术不同,后者是通过集成多个处理内核的方式让系统的处理能力提升,现在主流的多核处理器都是用了CMP技术,而像Pentium 4、Core i7这样的处理器带的“超线程技术”则属于多线程技术,而推土机是基于集群化多线程架构,Cluster-Based Multi-threading:CMT,也称多簇式多线程技术。

推土机架构多线程技术

加载存储单元

推土机架构皓龙的加载存储单元掌管着数据的出入。每个计算单元或每个核心中有两个加载存储单元(建成LS单元)。有24个项目存储队列这队列缓冲区存储的数据,直到它被写入数据缓存。

相对于传统超线程或双核技术,推土机这种设计集群化架构的理念是让双核模块在多线程运算中更高效。推土机每一个模块中加入了额外的执行单元,每一个模块都具备可以将一个大任务细分为多个并行任务的能力,这些生产线可以按需要任意整合,不会对整个装配线的效能造成影响。因此CMT技术的效能要高于传统的多线程方案。

事实上,相比全新的架构和多线程技术,推土机架构皓龙在HT总线及内存设计上延续了上一代马尼库尔所支持的DDR3内存,只是HT总线提升至3.1规范,而内存控制器最多可以支持四通道DDR3。

推土机架构皓龙HT总线及内存设计

HT总线之路

正如我们之前提到的,HT技术自2003年皓龙出世时推出,只是那时还处于HT1.0的阶段。从代号“上海”的核心开始,AMD处理器正式支持到HT3.0,但是因为那时候AMD还在使用第三方的平台,而平台芯片组的更新过于缓慢,所以直到伊斯坦布尔我们也没有看到HT3.0的实际作用。本次,推土机架构皓龙的发布将采用HT3.1总线。相比上一代HT 3.0总线的2.6GHz来说,HT 3.1可提供最高每位6.4GT/s的数据传输率,32-bit带宽可达51.2GB/s,相比上一代HT总线有很大提升。

推土机架构皓龙HT总线及内存设计

内存方面,DDR3已经很早就被采用了,这次只是将内存频率由DDR3 1333MHz升级到1866MHz,这主要是带来了内存带宽的提升。不过在实际应用中,因为英特尔还停留在采用DDR3 1600MHz的频率,所以推土机支持的1866MHz能否快速被采用还不得而知。

有一个值得注意的地方是,推土机架构皓龙提供了软件预读取。软件预取可以隐藏内存延迟,但不能提高总内存带宽。多回路有限的内存带宽,而不是处理器速度,如图所示。在这种情况下,最好的软件预取可以做的是确保足够的内存请求“飞行”,并保持内存系统所有时间都处于繁忙状态。

介绍了皓龙6200系列这么多的特点,相信大家已经迫不及待的想看到实物和测试成绩了。先别急,我们先来看看本次AMD送测的样机外观。这是一台双路1U的产品,我们看看它的外部设计。

AMD推土机服务器拆解AMD推土机服务器拆解AMD推土机服务器拆解AMD推土机服务器拆解AMD推土机服务器拆解

外观上看起来这台服务器与我们之前测试的产品并没有太多的差异,打开之后发现其内部是别有洞天。

AMD推土机服务器拆解

推土机服务器内部构造

AMD推土机服务器拆解

这下面就隐藏了我们盼望已久的Bulldozer处理器

AMD推土机服务器拆解

服务器的散热做得也不错,4个风扇高速运行

AMD推土机服务器拆解AMD推土机服务器拆解

这个就是皓龙6274处理器了,让我们擦干净它外面的硅脂

AMD推土机服务器拆解

皓龙6274处理器

AMD皓龙6274推土机服务器拆解

皓龙6274看起来的造型与上一代的马尼库尔差不多,因为具备了16个物理核心,所以看起来体积比一般的处理器要大许多。皓龙6274是最新皓龙6200系列的高端型号,同样采用了G34的接口,主频为2.2GHz,HyperTransport频率为3.1GHz,三级缓存为16MB,ACP功耗为115W。

AMD推土机服务器拆解AMD推土机服务器拆解

被测服务器内部配备8根三星DDR3 1600内存条,每根容量8GB,系统总容量为64GB,每处理器占有32GB内存。

AMD推土机服务器拆解AMD推土机服务器拆解

如此强悍的平台,供电系统也要相当完善才行。被测服务器使用了2块电源做冗余,单块电源的最大功率为750W,足够双路平台应用了。至此,我们对于AMD这台送测样机的拆解就结束了。下面我们将进入具体的测试环节,看看AMD推土机架构处理器的新改变带来了哪些性能提升。

我们刚刚了解了推土机架构皓龙处理器的一些特性。从变革的角度来说,推土机架构皓龙的确有着深刻的改进,双核心模块这一概念出现了,不仅仅在推土机当中,我们坚信在未来AMD的产品中也必将延续这一概念。

新的改进肯定会带来新的性能,就好比主频或制程的变化会对处理器有较大影响一样。下面我们通过与AMD以往处理器的对比,看看推土机架构究竟有哪些优势。

在测试处理器之前,按照管理我们先通过CPU-Z来看看处理器的信息,方便我们更好的理解处理器实物。

皓龙6274处理器软件信息

处理器信息,这里就不多介绍了。只是在三级缓存方面,皓龙6274官方信息显示的是16MB,但是软件显示只有12MB。这是为什么呢?其实在12核心Opteron Magny-Cours中我们就遇到过这样的问题,这其实是当我们开启HT Assist功能的时候,被HT Assist占用了,属于软件识别的问题,并不影响使用。

皓龙6274处理器软件信息皓龙6274处理器软件信息皓龙6274处理器软件信息皓龙6274处理器软件信息

本次测试的双路皓龙6274服务器一共提供了32个物理核心,看起来密密麻麻的一片。与竞争对手的超线程技术不同,这些物理核心都是实实在在存在的,那么对于多核心应用,比如虚拟化来说更具备优势。

皓龙6274处理器软件信息

刚刚介绍了许多皓龙6274处理器的内容,下面我们就要正式进入测试了。本次测试我们选取了上一代12核心的皓龙6174作为对比,它们正好是前后两代对应的产品,因此更能够看出性能的差异化。

SPECjbb2005 (Java 服务器 基准)是评估服务器端JAVA性能的SPEC测试工具。和以前的SPECjbb2000一样,SPECjbb2005通过模拟三层C/S系统(主要是中间层)来评估服务器端JAVA的性能。该测试软件运行JVM(Java虚拟机)、JIT (Just-In-Time)编译器、碎片收集、线程以及操作系统 的其他任务。它也测量CPU、Cache、内存和 SMP的性能。SPECjbb2005通过提供面向对象方式运行的、新的增强的工作负载,来反映真实应用系统的情况。另外,SPECjbb2005也引入了一些新的特性,如XML处理和BigDecimal计算,以保证测试结果能更确切地反映当前的实际应用。

SPECjbb2005测试成绩分析

新皓龙6274的性能在这个项目中也表现得很充分,相比上一代的皓龙6174来说在性能上有了40%以上的提升。虽然看起来并没有刚刚的提升那么多,但是这个测试与系统所使用的Java工具也有关系,而且40%的幅度并不小,足以说明新皓龙在架构及工艺上的改变。

SPEC 2006是SPEC组织推出的一套子系统评估软件,它包括CINT2006和CFP2006两个子项目,前者用于测量和对比整数性能,而后者则用于测量和对比浮点性能。计算系统中的处理器、和编译器都会影响最终的测试性能,而I/O(磁盘)、网络、和图形子系统对于SPEC CPU2006的影响比较小。

SPEC CPU 2006性能测试

SPEC CPU是我们经常使用的项目,相信大家对此也比较熟悉。这个测试主要是考察处理器的计算能力,分为整数和浮点两种。通过对比我们发现,SPECint中皓龙6274有大约15%的性能提升,而在SPECfp中的提升要多一些,达到了45%。因为SPEC CPU是一款测试处理器计算性能的软件,浮点运算中的成绩更高说明处理器在指令集方面有了更多的革新。

SPECpower_ssj2008是一个利用标准Java的JDK计算整体服务器性能,并根据其11个不同工作负载区域段的功耗得出服务器的工作负载/能耗比的测试方式,这更像是一个性价比–SPECpower_ssj2008的测试方式是:以一个服务器最大的workload为100%指标,每10%的workload降低为一个区域段,对比在每个不同的workload区域段之内的能耗,因此,这并不是一个通常意义上的性能/能耗比。

SPECpower_ssj2008测试成绩SPECpower_ssj2008测试成绩

能耗也是大家关心的问题,特别是针对云计算时代,大型数据中心如何节能是目前行业内的难点。这里的测试主要是针对能效展开的,可以看到皓龙6200相比以往的产品在能耗上有大幅度降低,对应的就是能耗比提升了许多,两者的差距大约为30%。

本次AMD发布的皓龙6200可谓是时隔4年之后的又一重大举措。4年前,AMD在北京发布了皓龙Barcelona四核处理器,从而掀开了处理器多核心时代的新篇章。这次发布的皓龙Interlagos和Valencia更是采用了全新的工艺,它们的出现使得皓龙系列跨入了一个新的时代,也必将引起议论新的升级风潮。

AMD皓龙6200引领服务器升级风潮

皓龙6274处理器

从测试中我们可以明显看出,皓龙6200具备了强大的运算性能,在与竞争对手的比较中占据优势,而且性能提升幅度巨大,相比上一代产品出现了革命性的改变。多核心加新架构带给皓龙6200广阔的发展空间,对于双路或者四路服务器采购来说,皓龙6200平台毋庸置疑是最具性价比的产品,也是高性能、高可靠性计算的最佳选择。