澳门太阳娱乐

AMD走出自己的路 小芯片设计如何打造业界最强64核EPYC?明仁花苑

日期:2019-12-29 22:24 浏览:61

  2019年5月,AMD迎来了自己的50岁生日。在X86这个行业,她只比老大哥Intel小一岁,后者去年迎来了自己的50周岁纪念日。50年来,这两家企业几乎主宰了全球半导体市场的风云变化,基本上Intel占主导地位,而AMD扮演挑战逆袭者的角色。

  AMD的最近一次逆袭,还得从5年前更换CEO说起。2014年10月份,即将发布Q2季度财报的AMD公司宣布CEO罗瑞德退位,这个职务将由时任COO的苏姿丰博士(Lisa Su)接任。那时候的她,刚刚加入AMD公司2年而已。

  彼时的AMD仍然处于蛰伏阶段。在CPU及GPU领域,AMD的两大对手Intel、NVIDIA已是如日中天,而当时的AMD并没有能足够与之博弈的处理器和显卡产品如今给AMD带来巨大转机的Zen处理器当时还在开发当中。不过,CEO苏姿丰是标准的女强人,AMD不服输的血性是刻在骨子里的。

  刚刚接任CEO没多久,苏姿丰就在接受媒体采访时表态“我们不会活在Intel阴影下”,这句话不是苏姿丰担任CEO之后AMD才做的,多年来AMD实际上一直在这样做。AMD希望寻求一条不同于Intel的发展之路。

  太远的不说,从X86处理器进入64位时代开始,AMD首次在64位指令集上做到了胳膊拧过大腿大家津津乐道的K8大锤处理器最关键的成功不是架构,而是抢先了64位指令集,明仁花苑如今我们在用的X86_64指令集的名字是AMD64,Intel后来也遵从了这一指令集。

  在这之后,AMD在X86处理器发展上一直在走自己的路。2011年,AMD推出了推土机Bulldozer架构,这款处理器的设计思路非常先进,2个整数单元+1个弹性浮点单元的设计迎合了AMD收购ATI之后意图打造的CPU+GPU协同发展的理念,这种模块化设计是X86发展的一个里程碑。

  再后来,AMD推出了我们今天讨论的主角Zen核心,这一代的处理器架构设计可谓具有突破性的改进,也同时延续了AMD自己的特色。它的问世不但让AMD实现了逆袭,也给AMD打下了未来十年的基础,目前发展到了Zen2,从路线架构已经在研发了。

  十年磨一剑,终成大器!2017年3月2日,AMD终于拿出了Zen核心的锐龙处理器,重返高性能处理器市场。Zen架构的到来,给了AMD扭转局势的机会。在K10、推土机两代架构之后,这是AMD再一次冲击X86市场,AMD也多次表态要再现辉煌,夺回失地。

  关于第一代Zen架构的改进细节,这里就不一一赘述了。两年前发布的产品在网上已经有大量评测和解析了,我们只提AMD在重新设计了内核、SMT多线程、缓存、Infinity Fabric总线等单元之后,Zen架构实现的目标吧。

  AMD之前宣称Zen架构实现了40%以上的IPC提升,不过最终发布时,AMD表示其实际IPC性能提升了52%,远超预期。相比以往的K10、推土机架构有了质的改变,比对手挤牙膏式的架构升级也是天翻地覆的变化。

  在上述架构改变中,AMD重新设计的CCX(CPU Complex)架构是最重要的。每个CCX单元有4个CPU核心,每个核心各自有64KB L1 I-Cache(指令缓存)、32KB L1 D-Cache(数据缓存)、512KB L2缓存,L3缓存高达8MB,但是4个核心共享的。

  这样4核CPU组合的CCX算是AMD Zen架构的一个模块,在第一代中桌面处理器最多8核16线个CCX单元,二者之间使用Infinity Fabric总线(简称IF总线)连接,而IF总线又是Zen架构的另一个仅次于CCX的创举。

  用于服务器版的Naples处理器最多32核64线组CCD(Core Chiplet Die)单元中。不过这时候AMD还没有正式用CCD这个命名,直到现在的Zen2架构中才出现这个命名。

  桌面版因为最多8核,所以只有1个CCD单元,外面看起来跟原生8核没什么区别,而服务器版是32核,有4组CCD单元,可以更清晰地显示出AMD在Zen(改进型Zen+是一样的架构)的设计思路那就是模块化。不过,这个模块化跟推土机的模块化不一样,属于创新模块,不是将内核模块,而是将CCD模块化,需要多少核心就配置相应的CCX/CCD核心即可。

  在14nm Zen及改进型的12nm Zen+这两个系列的产品中,AMD解决了高性能处理器的有无问题,52%的IPC性能提升彻底改变了AMD处理器的处境,不过Zen第一代的产品依然谈不上完美,AMD要在新一代的Zen2架构上解决两个问题。

  一个问题是继续提升Zen的IPC性能,另一方面则是要继续扩展Zen处理器的并行性,也就是更多的CPU核心。尽管AMD在Zen一代上已经实现了桌面8核、服务器32核,核心数上继续领先,但这还没有达到AMD的目标,要大幅超出才行。

  前一个问题要靠继续挖掘Zen架构的潜力,后一个问题就不只是架构设计的问题了。工程实现上难度更大,因为AMD在Zen2架构上要做64核128线nm工艺,将打造迄今为止最强大的X86处理器。

  在友商也只能做到28核的情况下,AMD做64核处理器最挑战的地方是什么?答案很简单,那就是成本,因为摩尔定律在最近几年中已经放缓了,AMD如果继续按照原有的思路做下去,那64核EPYC处理器的成本是难以想象的。

  对于这一点,AMD有着清醒的认识,此前AMD CEO苏姿丰在2017年的一次会议中就对比过先进工艺对成本的影响。统一以250mm2的核心来算,45nm节点的成本算作1,32、28nm节点开始提升,20nm节点就变成2倍成本了,到了7nm成本跃升为4倍,未来的5nm更夸张,成本将是之前的5倍。

  很显然,在Zen2架构确定要上7nm的时候,如果按照之前的路线走,后果就只有两种要么造不出来,要么造出来成本极高,因为按照AMD之前估算的那样,如果是原生64核,那么核心面积接近800mm2了, 这几乎是现有193nm ArF光刻机的处理极限,制造难度太大了。

  当然,我们现在都知道了Zen2架构不会采用这样的原始方式,因为AMD在这一代X86处理器上用了升级的Chiplets混合小芯片设计,这也是未来处理器的发展方向。它比第一代Zen的小芯片更为高明,让Zen2有了脱胎换骨的变化,以一种更巧妙的方式实现了首款64核128线小芯片架构分析:CPU核心面积大降 IO搭配更灵活

  什么是chiplets小芯片设计?业界并没有统一的定义,简单来说这是一种新兴的芯片设计思路,将大芯片化为多个小芯片,每个芯片的功能则比较单一,而且可以搭配不同的工艺,以实现提高性能、增加良率、降低成本的目的。

  在7nm Zen2处理器上,AMD实现混合小芯片设计的方式就是将CPU与IO单元分离,分别称为CCD(Core Chiplet Die)、IOD(IO Die),在一代Zen架构中每个CCD单元都是一样的,每颗CCD都包含IO部分,1-4组CCD单元实现了8-32核的并行;而在Zen 2架构中,IO核心被分离了出来,1个IO核心连接所有CPU核心。

  Zen2架构的CPU剥离了IO单元,变成了纯粹的CPU微内核,再加上7nm工艺相比14nm工艺带来了一倍左右的晶体管密度提升,所以在核心面积上7nm Zen2大幅缩小,单个小芯片面积只有74mm2,整合的L3缓存高达16MB,而Zen一代上一个芯片的面积是213mm2,其中核心部分只占120mm2,其余的都是IO单元的面积,由此可见Zen2架构采用小芯片设计带来的优势极其明显。

  最后还有一个问题值得关注,那就是延迟,虽然CPU、IO核心分离解决了超多核心的并行问题,但是IO、CPU分离开来也会导致延迟增加,这跟原生多核相比是个劣势。不过AMD在Zen2架构也针对此做了改进,包括IF2总线及缓存上的改进。

  而且每个CCD单元有各自的Infinity Fabric PHY物理层,通过它和I/O Die芯片内的数据总线(Data Fabric)进行高速互连通信注意,两颗CPU芯片之间没有直接通信,都要经过I/O Die,这样可以保证不同核心、缓存之间的延迟是一致的。

  得益于Zen2架构的性能改进及64核128线程的超多核心,第二代霄龙EPYC 处理器一经问世就打破了多项性能世界纪录,官方最新统计显示有140多项记录被64核128线程的EPYC刷新。

  AMD打破性能记录的领域设计HPC、浮点运算、整数运算、Java、DB/ERP、能耗、大数据、云计算及渲染等,几乎囊括了每一个需要高性能计算的市场。

  64核EPYC处理器的性能不只是AMD官方自吹自擂,许多第三方评测网站也证明了AMD所言不虚InsideHPC、Serverthehome、TheNextPlatform等专业网站也做了大量EPYC处理器性能测试,结果也显示64核128线程的EPYC处理器在性能上有非常明显的优势,大幅领先对手的28核56线程至强。

  上面价格对比不仅显示了AMD EPYC霄龙处理器的高性价比,实际上也反映了与友商的成本差距AMD采用的小芯片设计大幅降低了成本,而友商原生28核的设计使得制造难度极高,成本很难降低。

  2019年是AMD成立50周年,X86处理问世41年。在过去几十年的历史中,X86处理器的舞台上主要留下了AMD及Intel两家公司,期间虽然大部分时间都是Intel在主导X86发展,但AMD也屡次实现了技术创新上的反超,像64位,成就AMD曾经辉煌的超传输总线技术等等,如今,在多核X86上,AMD再次占了上风。

  为了尽可能提升多核性能,AMD在第一代Zen处理器上首次使用了chiplets技术。而在最新的Zen2处理器上,AMD又首创了Hybrid Multi-die架构的混合小芯片Chiplets设计,计算die和IO die采用不同的制程,赋予X86多核处理器极高的灵活性,使得AMD解决了7nm等先进工艺制造成本高、难度高、良率低的问题,可以更灵活地扩展CPU核心。这种堆积木的混合式组合使得桌面处理器达成达成了16核,服务器处理器轻松达到64核128线程。

  AMD引爆了X86处理器的“核战”,而且是主动出击,这也给对手Intel出了一个难题。后者目前最强的至强处理器也只有28核56线程,核心数方面与EPYC二代差距甚大,在性能上已经无法与之竞争,而且成本上更无还手之力AMD EPYC 64核在核心数翻倍的情况下售价只有一半左右,这样的吸引力对云计算、数据中心等客户是无法抵抗的。