AMD 逆袭的新武器:Zen 2 核心详解

2019-07-10 14:26:41 来源: 半导体行业观察
标签:

在过去的一个月里,AMD发布了许多公告。AMD正在准备推出他们的第三代Ryzen台式机处理器。这些处理器将利用AMD最新的微架构Zen 2,采用台积电领先的7nm工艺制造。

 

 

我们先来看看核心的微架构改进。

 

Zen 2

新芯片的核心是Zen 2。这一核心将用于AMD的移动APU、高性能台式机处理器和数据中心芯片。

 

Zen 2是继Zen之后的下一个主要微架构。随着Zen 2的推出,AMD承诺分别基于Cinebench 1T和Spec2006进行13-15%的IPC改进。要了解他们如何能够提取IPC的收益,我们需要仔细研究基础微架构的变化。

 

 

前端

前端的很大一部分已经进行了重新设计。在没有标识分支的典型情况下,从下一个64B块的地址开始从第一级高速缓存提取指令。Zen最初提供了一个64 KiB L1缓存。它由4路256组(4 ways of 256 sets)组成。Zen 2对L1进行了大改。关联性已经变为8路64组(8 ways of 64 sets),缓存大小减半到32 KiB。如果没有AMD的更多细节,我们很难描述其他变化,更高的关联性也应该降低未命中率。AMD指出,通过减小指令缓存的大小,并利用该区域来增加一些其他组件,特别是BPU和OC,它们能够从每单位面积的硅中获得更好的性能。顺便说一下,从组织的角度来看,Zen 2现在和英特尔的Skylake和Sunny Cove是一样的。值得注意的是,一级指令高速缓存转换后备缓冲区保持不变。它仍然是完全关联的64条目深度缓冲区,能够存储4 KiB、2 MIB和1 GiB页面。

 

高速缓存线保持64字节,每个周期可以获取32个字节。在不太常见的高速缓存未命中的情况下,L1将为包含未命中地址的线生成填充请求。每个周期最多32个字节可以从共享L2传输到指令高速缓存。

 

 

除了由提取生成的填充请求外,分支预测器和预提取器还可以发出额外的请求。这一点很重要,因为预取器能够利用空间局部性以避免停顿。这是AMD花了很多努力改进的另一个领域。

 

 

最好的预测器会赢吗?

分支预测单元的目标是预测条件分支的下一个地址。换句话说,猜测它是否被占用了。这里的基本思想是猜测指令流的路径,而不是通过停止流水线直到最终知道路径来浪费周期。然而,这必须明智地进行,因为糟糕的预测会直接导致工作的浪费。当发生分支时,将其存储在分支目标缓冲区中,以便可以更容易地确定和采用(或不采用)后续分支。诸如Zen之类的现代微处理器通过不仅将最后一个分支的历史而是最后几个分支的历史存储在全局历史寄存器(GHR)中,以便提取分支之间的相关性(例如,如果采用较早的分支,则可能也将采用下一个分支),从而进一步实现这一点。

 

 

Zen上的BTB是一个三级缓存——每个缓存都具有更高的容量,但代价是更长的延迟。Zen 2保持结构不变,但几乎将第二级和第三级BTB中的条目数量增加了一倍,分别从256和4K增加到512和7K条目。

 

顺便说一句,在Zen中,第一级(L0)BTB中的查找是零延迟查找,而L1和L2 BTB中的后续表查找分别导致一个和四个冒泡。目前还不清楚Zen 2是否改变了这些成本。

 

Zen采用了一种称为散列感知器的动态预测器。利用人工智能的大肆宣传,营销人员喜欢将其称为神经网络预测器。感知器是最简单的机器学习形式,与其他一些机器学习算法相比,感知器本身更易于实现硬件。它们往往也比gshare之类的预测器更准确,但它们的实现确实更复杂。Zen上的实际实现尚不清楚,但我们至少可以描述一个简单的实现是什么样子的。当处理器遇到条件分支时,它的地址用于从感知器表中获取感知器。对于我们来说,感知器只不过是权重向量。这些权重表示历史分支的结果与预测的分支之间的相关性。例如,考虑以下三种模式:“TTN”、“NTN”和“NNN”。如果这三个模式都导致下一个分支没被采用,那么或许我们可以说前两个分支之间没有相关性,并为它们分配很小的权重。先前分支的结果是从全局历史寄存器中获取的。寄存器中的各个位用作输入。输出值是计算出的权重和先前分支历史的点积。在这种情况下,负输出可能意味着“不采取”,而其他值可能被预测为“采取”。值得一提的是,分支历史之外的其他输入也可以用于推理相关性,尽管不知道是否有现实世界的实现利用了这一想法。Zen的实现可能要复杂得多,或许是对不同类型的历史进行采样。尽管如此,它的工作方式仍然是一样的。

 

 

鉴于Zen流水线的长度和宽度,错误的预测可能导致超过100个槽被刷新。这直接导致性能的损失。Zen 2保留了散列感知器预测器,但增加了第二层新的TAGE预测器。这个预测器是由Andre Seznec在2006年首次提出的,它是对Michaud的PPM类预测器的改进。TAGE预报器赢得了上一届分支预测(CBP)大赛(2006-2016)的全部四项冠军。TAGE的理念是,程序中的不同分支需要不同的历史长度。换句话说,对于某些分支,非常小的历史记录效果最好。例如1位预测器:如果某一分支以前采用过,它将再次采用。不同的分支可能依赖于先前的分支,因此需要更长的多位历史以充分预测它是否将被采用。标记几何历史长度(TAGE)预测器由多个全局历史表组成,这些表使用不同长度的全局历史寄存器索引,以便涵盖所有这些情况。寄存器使用的长度形成了几何级数,因此得名。

 

 

使用TAGE预测器的想法是,它试图找出哪个分支的历史数量最适合哪个分支,将最长的历史优先于较短的历史。

 

 

这种多预测器方案类似于分支目标缓冲区的分层。第一级预测器是感知器,用于快速查找(例如,单周期分辨率)。第二级TAGE预测器是一个复杂的预测器,需要很多周期才能完成,因此必须在简单预测器之上分层。换句话说,L2预测器速度较慢,但更好,因此用于对较快和较不准确预测器的结果进行双重检查。如果L2预测器与L1预测器不同,则当TAGE预测器覆盖感知器预测器时,会发生少量刷新,提取返回并使用L2预测,因为L2预测器被认为是更准确的预测。

 

除了使用TAGE预测器以外,AMD没有透露更多的内容。值得指出的是,至少就字面而言,TAGE预测器不再被认为是最好的预测器。之后,Seznec在TAGE预测器上进行了改进,增加了统计校正器(TAGE-SC),后来又增加了循环预测器(TAGE-SC-L)。替代方案包括BATAGE预测器。尽管如此,我们得到的结论是,有更多的机会找到更好的分支预测器,这是一个非常活跃的研究领域。

 

AMD表示,与之前的感知器相比,新的分支预测单元显示出的误预测率目标低30%。因为现代微处理器的精确度高达90%。与在Zen中的实现相比,这种错误预测率的大幅降低将直接转化为更高的IPC。事实上,如此大的改进可以单独占据Zen 2声称的性能提升的很大一部分。

 


改变现状

关于AMD的这一代芯片,我们注意到的一件事是现状的变化。从历史上看,英特尔在设计最先进、性能最高的预测器方面投入了大量资源。另一方面,AMD往往落后于一个“足够好”的更保守的预测器。随着Zen的成功,Zen 2的情况变得有所不同。虽然AMD正在摘取所有唾手可得的成果,但它们现在正直接瞄准英特尔,而英特尔一直拥有无可争辩的领先优势。换句话说,AMD似乎对他们目前的核心设计充满信心,可以腾出更多的资源来解决次要的缺陷。

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
华为的最强 AI 昇腾 910,如何得以世界第一?

8月23日,今天下午华为在深圳坂田总部举办发布会,正式发布算力最强的AI处理器Ascend 910(昇腾910),同时推出全场景AI计算框架MindSpore。

将Power指令集开源,IBM 是如何咸鱼翻身的?

这是一个漫长的过程,如果在十年前就这样做,情况可能会更好。但是,随着收购Red Hat后大量注入开源精神,IBM终于迈出了下一步,将其Power系列处理器的指令集体系结构开源。

AMD 超越摩尔定律之路

现代数据中心和 HPC 环境的快速变化要求技术行业提供更强大的算力,而该行业在提供算力容量方面遇到重大障碍。或许很少有人比AMD总裁兼首席执行官苏姿丰更了解这一事实。

快速掌握MIPI开发攻略,对接百度人工智能计算卡EdgeBoard

MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写,是MIPI联盟发起的为移动应⽤处理器制定的开放标准。

英特又“挤牙膏”?最新一代酷睿用14nm工艺
英特又“挤牙膏”?最新一代酷睿用14nm工艺

英特尔对移动 PC 处理器的更新仍在继续,今天,英特尔带来了第二批面向轻薄本和二合一设备的第 10 代 Comet Lake 移动处理器。

更多资讯
华为AI芯片是从什么时候发展起来的?一文读懂华为AI芯片发展史

众所周知,数据、算力和算法,驱动着人工智能的第三次浪潮。面对AI算力需求的爆发式增长,这几年华为在做些什么?看似高深的人工智能(AI)技术,其实已经“润物细无声”地深入大众生活,仅你手中一部华为Mate20手机,就可以实现人脸识别、物体识别、物体检测、图像分割、智能翻译等AI功能

华为AI处理器虽然用了Arm架构,但徐直军表示完全不慌?

与非网8月23日讯,自华为遭受到美国的禁令已经过去了九十多天,但似乎华为并未受到太大的影响,反而是美国帮助华为打了个响亮的广告,就在今天,华为又发布了AI处理器,还表示根本不慌。

海思与联发科的“你侬我侬”,谁才能最终亚洲一哥”?

与2018上半年相比,有两家新进入前15名的,分别是Fabless(无晶圆厂的IC设计公司)厂商联发科(MediaTek),其从去年同期的第16位上升到第15位,另一家是IDM厂商索尼,该公司是这15家厂商中唯一实现同比正增长的,排名也上升5位,成为2019上半年第14大半导体供应商,具体如下图所示。

兆易创新的 RISC-V 内核 32 位通用 MCU 产品,全球首个有哪些看头?

2019年8月22日,北京 — 业界领先的半导体供应商兆易创新GigaDevice(股票代码603986)宣布,在行业内率先将开源指令集架构RISC-V引入通用微控制器领域,

放弃自主研发留下惨痛教训 产业溃败成就“台湾存储教父”?

一个国家的高科技产业如果落后,就很容易被“卡脖子”。半导体芯片是尖端制造业之一,中国的芯片进口额已经超过原油进口额,成为第一大进口物资,每年的进口规模超过2000亿美元。在动态存储芯片(DRAM)方面,为了尽快突破技术垄断,实现独立自主,摆脱完全依赖进口的局面,近年来,中国大陆开启DRAM产业战略布局,引起行业关注。