MCPLive > 杂志文章 > AMD“伊斯坦布尔”走向前台

AMD“伊斯坦布尔”走向前台

2009-08-21ViSA《微型计算机》2009年8月上

正如我们几个月前介绍的那样(见2009年1月上刊《欢迎来到“上海”—AMD发布“上海”核心皓龙处理器》一文),在“上海”发布后没多久,英特尔就推出了全新的基于“Nehalem”架构的新Xeon X5500系列处理器。很快,
AMD在6月初的台北ComputeX上宣布提前五个月发布新的六核心处理器,代号“伊斯坦布尔(Istanbul)”。那么,6核心究竟带来了哪些新意呢?本文将带给您答案。

源自“上海”的“伊斯坦布尔”

“伊斯坦布尔”处理器基本上是在“上海”架构上改进而来的。从大的结构来看,“伊斯坦布尔”其实是在“上海”中增加了2个核心,一级、二级和三级缓存等其它基本规格和“上海”完全相同。

“伊斯坦布尔”处理器依旧基于AMD 45nm SOI技术制造。在1月上刊的文章中,我们已经对
AMD的45nm SOI技术做了比较详细的解释。目前看来,AMD对拆分后的合作伙伴
GLOBALFOUNDRIES的制造技术相当满意。首发版本“伊斯坦布尔”处理器的频率高达到了2.6GHz,并且ACP(平均CPU功耗)和四核心版本的“上海”相同。


“伊斯坦布尔”的6核心架构设计源自“上海”,并未作出革命性变动

“伊斯坦布尔”集成了多达9.04亿个晶体管。相比之下英特尔的Xeon 5500系列处理器只有7.3亿晶体管,之前的“上海”处理器也只有7.05亿晶体管数量。在没有增加L3缓存的情况下,我们可以大概估算出“伊斯坦布尔”每核心的晶体管数量约为1亿个(其中包含了64KB的L1缓存和512KB的L2缓存),而整个6MB L3缓存则耗费了3亿个晶体管。


“伊斯坦布尔”的核心架构简图。可以看出,“伊斯坦布尔”
保存了“上海”的基本架构,内存控制器和HT总线基本没有变化

AMD目前发布了5款“伊斯坦布尔”处理器。其中两款面向8路用户,型号为8435和8431,频率分别为2.6GHz和2.4GHz;三款面向双路用户,分别是2435、2431和入门级的2427,频率分别为2.6GHz、2.4GHz和2.2GHz。所有“伊斯坦布尔”核心Opteron的ACP都为75W。

保持节能优势,继续提升效率

虚拟化与节能

“伊斯坦布尔”保留了“上海”核心的几乎所有功能,比如虚拟化功能和节能设计等。虚拟化技术可以利用一台电脑虚拟出不同的主机来各自完成不同的任务,提高系统的利用率并扩展系统的功能,充分挖掘系统的性能潜力。Opteron处理器所采用的AMD-V虚拟化技术拥有增强的快速虚拟化索引,提高虚拟化应用的性能以及允许虚拟机直接管理的内存。除此之外,AMD还开发出一系列特色技术来提升虚拟化的应用水平。比如Tagged TLB技术可以通过在CPU中存储一个表,用于记录近使用的从虚拟到物理内存的翻译记录,并标记是来自哪个虚拟机。在多个虚拟机同时运行时,拥有Tagged TLB就能够在内存地址切换时知道TLB与虚拟机的对应关系,提升虚拟机与物理机之间的数据传送及翻译转换效率。除此之外,AMD还提供了如架构迁移、快速虚拟化索引等专门针对虚拟机应用的技术。

在能源管理方面,AMD也有自己一套拿手的方法。比如传统的PowerNow!技术,通过不同的频率切换获得节能效果,并平衡能耗和性能的关系;Dual Dynamic Power Management技术则是将CPU电源管理和内存控制器电源管理分开,两者互不干扰,并且可以分别省电;Smart Fetch
Technology技术可以暂停处理器中某个闲置核心;CoolCore技术可以关闭处理器不工作的部分,起到节能降温的作用。

这些节能技术被进一步应用在“伊斯坦布尔”处理器上,以提升处理器的性能/功耗比(简称能耗比)。根据AMD的数据,虽然“伊斯坦布尔”处理器的核心数量增加了,但能耗相比“上海”几乎没有变化,用户不需要更换散热设备就可以平滑升级至新的“伊斯坦布尔”处理器。在AMD针对未来的另一个演示PPT中,12核心的Magny-Cours相比“伊斯坦布尔”的能耗变化也不大。总的来说,各种能源管理技术为AMD立下了汗马功劳,如果不是这些出色的节能设计,AMD就不可能在更多核心、更高频率的设计上继续迈进。

更多的新技术

除了继承自“上海”核心的功能外,“伊斯坦布尔”也拥有不少属于自己的独特改进,提升处理器在更多核心情况下的性能表现。其中比较重要的是以下四项:更高速的HyperTransport(以下简称HT)总线、APML远程电源管理界面、X8 ECC和HT Assist探测过滤器。

1.更高速的HT总线

在AMD改用HT总线连接多个处理器以及处理器和北桥之后,相比竞争对手之前的前端总线架构,明显获得了更大的数据带宽和更低的延迟。不过随着核心数目的增加,处理器之间的数据交换也越来越频繁了。这就要求更高速的传输总线。AMD在“上海”处理器上升级HT总线至HT 3.0之后,再次提升了“伊斯坦布尔”的总线速度。

相比“上海”处理器的HT总线带宽,“伊斯坦布尔”核心Opteron处理器升级至高双向57.6GB/s带宽。目前AMD为“伊斯坦布尔”配备的HT 3.0总线频率为2.4GHz,每条位宽为32bit,因此每条总线可以提供2.4×32/8=9.6GB/s的单向带宽。由于HT 3.0总线的双向传输特性,因此单根HT 3.0总线可以提供19.2GB/s的双向带宽,三根HT 3.0总线合计57.6GB/s。

要想发挥“伊斯坦布尔”的高速HT总线性能,必须要有合适的芯片组来配合。目前速度快的NVIDIA MCP55芯片组只能提供2.2GHz的HT 3.0总线频率,换算下来总线带宽为52.8GB/s,暂时无法发挥“伊斯坦布尔”的高速度,而AMD针对“伊斯坦布尔”设计的没有瓶颈的“Fiorano”平台会在8月正式发布。

2.“APML”远程电源管理界面

对大型服务器来说,如果需要系统管理员进入每个机器的BIOS或者系统去设定CPU的能耗和节能状态,无疑是非常复杂和浪费人力的事情。但如果有了“APML”远程电源管理界面,一切都会变得很轻松。

“APML”可以让系统管理不用进入主板的BIOS设定,通过远程操作就能够控制设备的电源,利用“APML”技术,管理员能够设定CPU主频的界限、监视系统功耗、修改电源参数等等。对大型数据中心来说,监控设备的功耗对综合节能来说是有意义的。

相比强大的功能,部署“APML”只需要一颗与处理器相配的BMC(管理处理器),再加上软件配合,使用起来比较轻松,所需费用也很低廉。虽然目前支持“APML”的设备还没有大量上市,但是它已经得到了大量企业级用户的欢迎和关注。

3.正式支持x8 ECC

对于服务器来说,使用ECC校验内存避免内存存取错误是理所应当的。不过这种内存的颗粒有两种规格,4bit位宽的为x4颗粒和8bit位宽的为x8颗粒。8bit位宽芯片的好处是能够用更少的芯片达到更高的位宽。比如同为64bit,x4芯片需要16颗,而x8只需要8颗。

之前的一些服务器处理器在支持x8规格的ECC内存方面有一些限制,使得用户在服务器部署和采购时有所不便。而“伊斯坦布尔”彻底解决了该问题,对x4和x8芯片都能良好地支持,进一步方便了用户的使用。

4.“HT Assist”探测过滤器

“HT Assist”探测过滤器是“伊斯坦布尔”处理器的一个非常重要的改进功能。它能够极大地减少4核心以上处理器的数据查找时间、降低延迟并节省带宽。下面我们就这种探测的运行机制简单介绍一下。

在传统的四核心处理器中,如果CPU3需要只有CPU1才有权利访问的数据,那么CPU3会向
CPU1提出申请,随后CPU1会采用广播的方式查询近的数据在哪里,直到找到并传输给CPU3。在这个过程中,多个核心会频繁交流、报告数据情况,复杂的报告传输浪费总线带宽,并使得CPU3等待时间大大延长。图中从CPU3向CPU1发出请求到后收到数据,耗费10个时钟周期。


HT Assist让多核之间的数据查找更有效率

我们很容易看出,出现数据频繁交流的原因是所有核心都不知道数据到底在哪个核心。所谓“广播”模式,基本上和群众大会喊话找人差不多。比喊话找人更差劲的是:CPU的访问方式决定了必须得一个一个传递下去才能找到数据,而所有没有找到的或者距离较远的核心还得报告一次“没找到”或“找到了”,毫无疑问浪费了大量的数据带宽。

“HT Assist”对这种问题给出了一个非常聪明的解决方法:它给CPU核心中的数据做了一个“目录”。这个“目录”存放在大家都可以访问的L3缓存中,大概占用1MB的空间(可在BIOS中设定)。有了这个“目录”就轻松多了。启用了“HT Assist”后,CPU3向CPU1提出申请,CPU1直接在L3缓存中的“目录表”中找到数据存在在CPU2中,直接向CPU2发送请求。CPU2收到请求后将数据传递给CPU3。全部过程耗费了4个时钟周期,节约了60%的时间。

根据AMD的测试,采用了“HT Assist”之后,系统带宽至少节约了60%。虽然占去了1MB L3缓存空间,但是更宽的系统带宽和更低的系统延迟还是显著增加了效能。而对于双核心处理器来说,系统内本来只有2个核心,互相查找命中率几乎是100%,无论怎样都不需要如此复杂的查找过程,因此对双核心用户来说“HT Assist”基本没用。只有在四核心、六核心甚至更多核心的系统中,“
HT Assist”才能有效发挥作用,节约带宽并提高CPU的数据查询效率。

核心数量的优势有多大?

“伊斯坦布尔”处理器的核心更多了,那么其性能提升情况如何呢?下面我们就其性能的变化作出简要分析。

对多核心系统来说,性能的增加程度并不与核心数量呈线性关系,它更看重软件优化。如果软件优化不到位,不能很好地支持更多核心,轻则性能不会增加,重则会带来一定的性能损失。比如在双路渲染应用中,如果核心数目超过8个,性能甚至会有轻微的下降。在某些如邮件服务器、网络服务器和数据库应用的状态下,8核心以上的处理器带来的性能提升不会很明显。因此可以预计的是,在一部分对多核心优化不够成功的应用中,“伊斯坦布尔”相对“上海”的性能提升可能比较有限。

“伊斯坦布尔”针对高性能和部分运算量沉重的虚拟化应用领域,而四核心的“上海”则针对预算有限的用户或者能耗敏感型用户。“伊斯坦布尔”的出现,进一步补全了AMD的产品线。

但是,只要软件优化出色,“伊斯坦布尔”就可以展现出更强的性能。比如高性能密集型数据计算、大型数据库、运算量极为沉重的虚拟化应用领域等。特别是在虚拟化应用领域,只要核心设置正确并拥有足够的系统内存,那么“伊斯坦布尔”将表现出大大超越“上海”的性能。另外,由于“伊斯坦布尔”拥有64KB一级缓存和高达512KB的二级缓存,因此在一些缓存敏感型应用上的性能表现也会比较出色。

根据AMD数据,“伊斯坦布尔”相比同频率的“上海”处理器,每瓦特性能至少提升了34%。这是一个非常了不起的进步。

在偏重内存带宽的任务中,“伊斯坦布尔”的多任务处理能力虽然得到了提升,但是在内存带宽方面并没有本质性的革新,依旧沿用了自双核心Opteron以来的双通道DDR2 ECC内存。一些计算任务对CPU核心的计算压力不大,但是数据量巨大,极为耗费内存带宽。虽然更高的HT总线可以提升性能,但若内存本身没有变化,这个提升会有多大还要视情况而定。但总的来说,根据AMD的数据,“伊斯坦布尔”能够带来超越“上海”30%的性能增益。

总结

AMD此次发布“伊斯坦布尔”Opteron六核心处理器,当然是应对英特尔的Nehalem-EP核心
Xeon 5500系列处理器的举措,希望以更多的核心为用户提供更强大的并行处理能力。从实际产品来看,“伊斯坦布尔”比较好地继承了“上海”核心的多种先进技术,并发挥了AMD在节能设计、虚拟化方面的传统优势。

不过AMD目前的优势也许更多还是在于高端8路服务器领域,英特尔新一代“Nehalem-EP”
Xeon在双路领域的进步有目共睹,是AMD强有力的竞争者。在目前如此激烈的竞争中,AMD依旧任重而道远。而从AMD的路线图来看,下一代服务器处理器将会有比较大的改进。为了拥有更多优秀产品可选,相信AMD在产品层面上的一举一动,都非常令用户们期待。

分享到:

用户评论

用户名:

密码: