Arm新年货报到,更强能效与AI计算能力,不给订制架构活路!_风闻
TechEdge科技边界-2019-05-27 21:56

每年在台北Computex发布新的CPU与GPU架构已经是Arm的固定戏码,而在过去几年,这些新架构带来消费者的兴奋越大,也等同带给高通、三星、苹果等主打定制架构的应用处理器厂商更大的压力。

两大AI独角兽商汤和旷视也来到Computex为Arm站台。
更大更威猛的Cortex-A77

首先在新款CPU架构方面,不仅强调延续Project Trillium,整合性能倍增的AI计算能力,在7nm制程中,标准设定就已经达到全硬件方案的一流水平,不弱于苹果或华为的方案。

除了AI算力外,在基本架构方面也有了相当大的进化。
首先在前端(Front-End)部分,分支预测能力的带宽倍增,这样能带来更高的指令预测速度,相对应的增加性能表现。另一方面,分支预测的能力也有了明显的进化,通过更好的设计,可以有效的减少预测错误的状况,减少性能的损失。
另一方面,BTB(Branch Target Buffer)容量增加了30%,也能在理论上带来更高的性能表现,而相较于前一代大了4倍的L1 BTB,有着一个时钟周期的超低延迟表现。

另一方面,A77也引进了宏操作(Macro OP)缓存,为性能的增加建立了良好的基础。

这个缓存有1500个entries,可以可以用来译码L0指令缓存,缓存命中率在各种操作情境下都可以超过85%,并具备有更高的预取(Fetch)带宽。而借由这个缓存的设计,可以大幅减少分支预测错误带来的惩罚,简言之,可以为整体CPU效能带来相当大的成长。

而其他几个关键的改进,包括增加了50%的指令分发带宽,同时也增加了25%的非循序(Out of Order)视窗尺寸,同时也加速了分支预测错误之后的复原重命名机制,强化在高负载情境下的性能表现。根据Arm的简报,通过这些设计,Cortex-A77可以带来相对于A76达20~35%的IPC(instructions per cycle)性能成长,等于是苹果A12和麒麟980的CPU性能差距了。
随着对性能的追求,Arm在前端部分的设计其实越走越像X86架构,过去我们可以在苹果的定制架构中看到类似的变化。
不过深化的分支预测能力也增加了安全上的疑虑,最近英特尔处理器的安全问题几乎都是发生在分支预测以及相关的处理设计上,这方面我们只能相信已经有了前车之鉴,Arm应该不会犯同样的错误。
一扫三代BitFrost架构差强人意的表现,新Valhall架构更上层楼
另一个发布重点就是Mali-G77,作为Arm本家的绘图架构,由于具备更高的集成优势,以及整体计算方案的配套设计优势,已经是市场上最流行的绘图架构。

Mali-G77基本上是基于新一代Valhall架构的产品,性能要比去年的G76有大幅成长,尤其是在一贯表现较弱的能效方面终于有了较大的改善,这代表,采用G77的芯片可以在同样的GPU布局面积有更好的效能表现,或者是同样的效能表现,能达到更好的能源使用效率。
过去Mali几代产品其实效果都差强人意。当然,并不是Mali毫无长进,而是对手实在太强大。Mali的对手包括高通的Adreno架构,以及苹果的GPU技术。
高通的Adreno来自于从当初AMD切割出来的移动绘图方案,虽然最初表现也不是很出色,但经过高通的大幅改良与进化之后,已经成为Android体系下的最强GPU,几乎可和苹果一较高下。其最新的Adreno640虽没有在架构上有额外的创新,但得益于架构本身的优势,以及与制程搭配得宜的规模增长,其能耗表现远超出基于Mali架构的平台。
而苹果虽然号称改用定制化GPU架构,并取得移动领域最强GPU的称号,但其基本IP和相关设计专利还是来自于Imagination的PowerVR,不仅是芯片布局的相似度,甚至在材质和内存压缩技术方面,也都还是沿用PowerVR的技术。

Valhall架构最大的改进之处,在于大幅扩大了执行规模,虽然还没有达到桌面GPU常见的32或64线规模,但也比G76的8线设计要大了不少,而且新的GPU也简化了不少ISA指令方面的复杂度,让编译器可以更好的发挥调试作用。

另外值得称道的是,其动态指令调度引擎已经完全硬件化,不需要CPU干预,因此效率也更高。另一方面,为新GPU核设计的ISA指令也完全是为了对纹理处理流量的最大化而优化,并更新了数据结构,包含新的优化几何形状和流动优化处理,AFBC(Arm Frame Buffer Compression,Arm帧缓冲压缩)也更新到1.3版,带来快速、实时的无损压缩与解压缩,最大限度地减少SoC内不同IP块之间的数据传输量。

G77和G76的几个关键不同点,在于G77一个处理单元中,通过多个预取单元,连接一个仲裁中介层来存取绘图计算单元,包装成一个单一绘图引擎,而G76则是一个处理单元包含了三个固定线路的绘图引擎。通过这样的新设计,不仅大幅简化编译器的工作,也让优化工作更简单。

另一个关键的改进点,在于G77将材质贴图的性能增加了一倍,为了达到这个效果,G77的绘图处理单元内建了4倍于G76的材质处理单元。另一方面G77的ALU(算数计算单元)性能增加了33%,整体的纹理吞吐量也获得倍增。G76的纹理:像素处理能力是1:1,但G77则是2:1,这也可以视为Arm希望在GPU设计方面回归初衷,如果没有办法获得更好的绘图效能,而只是强调GPU的计算能力,那对于GPU可能是倒因为果的作法。
当然,强化了绘图性能,GPU本身的计算能力也不能忽视,G77仍然增加了不少针对机器学习优化的设计,比如说减少了流水线的深度,并配备更大的四路高速缓存设计。
G77的L2缓存可以从256K到2MB,端视客户的配置选择,L2带宽也倍增。
G77的整体设计与其说是移动GPU,不如说是准桌面等级的GPU,其设计理念也向对手和桌面GPU学习了不少,但仍不忘维持并改进身为移动GPU最重要的特性,也就是能效表现这点。
Arm让移动芯片的定制必要性越来越小
A77和G77在技术上都有明显的革新,其纸面性能增长幅度也相当高,可以说是从麒麟980一举进化到苹果A12的程度,甚至有过之而无不及。最重要的一点,就是Arm的年货策略,让芯片业者只能苦苦追赶,而部分领先业者也紧张不已,深怕被公版架构追赶上。
多年前Arm还在两三年才推出一个新架构的时代,高通嫌Arm的进展太慢,架构也不够优秀,因此使用了Arm的指令集授权,并从头到尾定制了自有的CPU核心,引入了许多先进的概念,成为当时市场上最先进的移动处理器架构。
然而Arm在大幅加速芯片架构的迭代之后,架构年货化已经是正常步调,相较之下,高通和其他定制CPU核心的芯片业者,在发觉自己苦心研发的架构已经没有太多优势时,毅然决然的放弃自研架构,转而使用公版架构。虽然,高通曾经在骁龙810因为过于相信Arm而惨遭滑铁卢,但后来也基本上都采用小幅调整的半定制核心,不再从头设计CPU架构。而三星的Exynos移动CPU架构中的定制核心,基本上也是修改Arm公版核心而来。
这对Arm来说也是一种胜利,从前他们要追着客户跑,但现在客户反而可能要追着Arm架构跑,深怕落后于对手,这也代表,公版Arm架构的话语权也相对增加。部分如联发科或瑞芯微等缺乏定制能力的移动芯片厂商也因此获得好处:只要愿意花钱授权新架构,就能得到一线性能的产品。
也因此,芯片设计业者也更能把重点把在CPU或GPU之外的部分,Arm掌握生态中最重要的两大部分,而客户则是努力差异化,不论是NPU的加入,或者是其他特性的增减。
基于新架构的移动芯片最快2019年底与世人见面
A77与G77的结合可以说是带给移动产业另一波新的计算革命,技边也预期这些架构也将很快与我们见面。三星和高通向来在新架构的引进最快,因此有机会在2019年底就导入并量产,而联发科也宣布要在2020年使用该架构,结合联发科自豪的APU设计,要推出高端处理器,另外,苹果年底也即将推出A13,届时我们可以看看一直站在云端的苹果,是不是会被竞争者给追上。
至于华为,若照正常发展路线,其实年底应该也会上A77+G77,但由于有非产业因素干扰,这方面可能就会有变量。