浅析Arm全新Mali G76 GPU:全方位进化,但仍不足与高通苹果匹敌
2018-06-06 14:54:17 来源:网络整理 作者:秋军
浅析Arm全新Mali G76 GPU:全方位进化,但仍不足与高通苹果匹敌
2018-06-04 13:19 来源:雷锋网 高通 /苹果 /三星
原标题:浅析Arm全新Mali G76 GPU:全方位进化,但仍不足与高通苹果匹敌
距离Arm公布代号Bifrost的次世代GPU架构并推出Mali G71核心已经两年了, 然而作为先锋的Mali G71在麒麟960和Exynos 8895中的表现都不尽人意,其功耗之高明显超出了预期。之后的Mali G72是一款更为合理的产品,它更接近Bifrost架构所承诺的能效目标,在麒麟970和Exynos 9810上实现了100%的能效提升。
今天,Arm公布了Mali G72的后续产品,也是Bifrost系列的最新产品:Mali G76,目标非常明确:提高单位功耗性能和单位面积性能,并尽可能地赶超竞争对手。Arm承诺,在台积电7nm工艺的支撑下,使用Mali G76的下一代SoC性能可提高50%。

横向来看,Mali G76重点改善了三个关键指标,首先是性能密度提高了30%,这意味着GPU面积不变,性能可提高30%;或者在性能相同时,可缩小约24%的GPU面积。其次,Mali G76的微架构效率提升了30%,这要归功于架构内功能块的整合。最后,Arm为Mali G76添加了新的专用8位点积指令,使其机器学习推理性能提高了2.7倍。

扩充架构规模
对于Arm的GPU设计来说,Bifrost已经是一个现代的图形架构,3D图形技术在过去的两年中也没有发生重大变革。Mali G76在图形特性方面和Mali G72完全一样,变化集中在图形计算过程中。
与Mali G72相比,Mali G76在架构上的优化幅度更大。虽然它仍是Bifrost架构,但GPU的工作方式发生了很大变化。无论在移动GPU还是桌面GPU领域,Mali G76都是单个图形体系版本迭代中变化最大的之一。
前代Mali G71/G72的每个EU模块中包含4组FMA和ADD/SF流水线并组成一个线程粒度,Arm将这种模块结构称为“Quad”。随着技术和应用的发展以及移动GPU在VR和高画质游戏领域的压力不断增加,Quad结构的运算效率已逐渐无法满足需求。

根据Arm的数据,Mali G76为了进一步提高架构的性能和面积效率,将GPU内的基础计算模块的规模增加了一倍,单个EU内拥有8组FMA和ADD/SF流水线。全新EU结构的面积并没有大幅增加,相比前代只提升了22%,但性能却得到了显著提升。
这是一个非常有趣的变化,通常来说线程粒度的尺寸通常代表着硬件架构的典型特性。PC GPU的线程粒度已经有许多年没有变动过了,NVIDIA自2006年至今一直保持着32宽度,AMD则从2011年至今一直使用64宽度。
此前Bifrost架构所用的Quad结构,相比竞争对手架构的线程粒度(16~32宽度)要小很多。通常来讲,线程粒度反映了架构在资源/面积密度和性能之间的平衡点,较大的线程粒度可节省控制逻辑单元数量(单个32宽度线程粒度只需1个控制逻辑单元,而8个4宽度线程粒度需要8个控制逻辑单元)。

但线程粒度越大,控制单元填充它就越困难。Arm的GPU哲学总体上注重的是尽量避免执行停滞,通过使用更小的线程粒度降低线程发散的可能性。分割线程虽然并不难,但也会造成性能损失。
Arm在推出Bifrost架构时表示,他们采用了4宽度线程粒度,以减少因线程发散所造成的ALU(算术逻辑单元)闲置。这从理论上看是一种很好的策略,如果运算中有大量分支代码,那么因线程发散而闲置的ALU就没有了任何价值。
然而对于一个很小的线程粒度来说,控制逻辑单元与ALU的比率太高了,浪费了大量硬件规模。Mali G76换用8宽度线程粒度后,降低了控制逻辑单元与ALU的比率,在ALU吞吐量翻倍的情况下,EU模块的规模只比之前4宽度线程粒度时增加了28%。

虽然Arm并没有做出更明确的解释,但雷锋网认为此次改变其实反映出Arm此前4宽度线程粒度的设计有些一厢情愿了,实际游戏中几乎用不到这么小的尺寸。更致密的Quad结构也有助于扩充架构规模,Arm可以在单位面积上塞入更多ALU以提升性能。













闽公网安备 35020302000061号