剖析Imagination的A-Series GPU新架构:和高通Adreno和Arm Mali比比

本月月初,Imagination Technologies在上海进行了一次宣称是“15年来最重要的GPU IP发布”。这次发布的GPU IP新品名为A-Series,没有沿用早前以数字为系列代号的传统,而且似乎还弱化了PowerVR在产品名中的存在……

5H0esmc

20191206-imagination-4.jpg5H0esmc

20191206-imagination-5.jpg5H0esmc

同代比较知名的竞品就属骁龙855的Adreno 640了,另外Evans并没有具体说对比的Arm Mali竞品是哪个型号,die shot也看不出来。不过PPT上标注了MP12,亦即这是个12核GPU,市面上比较新、而且符合该特征的产品就是Exynos 9820了,其GPU为Mali G76MP12,所以猜测Evans对比的这款GPU正是Arm Mali G76。如果将Adreno 640的性能、占地面积视作100%,则“Arm需要额外84%的占地面积,才能达到相同的性能水平,也就是说功耗必然也更高”,“而Imagination达到和高通相当的性能,在芯片面积和功耗方面都要小得多。”即便是达到175%的性能水平,占地面积和能耗依然更小。5H0esmc

这个数据当然是非常好看的,不过实际上这种对比可能并不公平,因为一方面Exynos 9820和骁龙855在制造工艺上就有差别,而且G76也并非Arm Mali最新的GPU IP。今年年中,Arm就在Computex大会上宣布了Mali G77的问世。推测A-Series的实际GPU芯片产品至少也要2020年才能面市,所以A-Series首波真正要应战的应该是Arm Mali G77,以及高通刚刚发布的Adreno 650。5H0esmc

好在Mali G77在宣传中提到性能密度(performance density)相比G76也就提升为30%;而高通则宣称Adreno 650性能提升25%;就Imagination公布的数字来看,A-Series即便与这两者同场竞技也完全有充沛的余力一战,而且基本是无压力的状态,主体上还是要看Imagination令IP实体化的速度和表现。5H0esmc

20191206-imagination-6.jpg5H0esmc

Imagination PowerVR产品执行副总裁Steve Evans5H0esmc

为什么“性能暴涨”?

那么达成这种性能暴涨的原因是什么?Imagination PowerVR产品管理和技术营销高级总监Kristof Beets在接受我们采访时,首先提到的就是“完全重构的ALU(算术逻辑单元),我们对其进行了大量精简,现在其内部就是相当简单、干净的MAD管线(MAD是指乘法累加单元)”,执行单元从过去的2个MAD单元,变为现在的1个MAD(而且还抛弃了Furian架构中的MUL乘法单元),也就是说每个时钟周期单条管线的执行能力实际是下降的——这也是ALU拓宽的重要前提。5H0esmc

20191206-imagination-7.jpg5H0esmc

A-Series在架构上也因此有了“128条ALU管线同时并行”,也就是128-wide ALU。128线程宽度是什么概念呢?早前的Rogue架构采用的是32线程宽度wavefront(wavefront是GPU代码的最小可执行单元,SIMD过程中数据处理的最小单元,在所有线程中同时执行同一指令,Nvidia称其为warp),不过单个SIMD仅支持16-wide;Furian架构则真正加宽到了32-wide,即单个时钟周期执行32-wide wavefront。5H0esmc

作为对比,Arm Mali G77的SIMD宽度是16-wide,这还是相较G76的一倍拓宽。所以A-Series单就ALU结构来看,显然是独占鳌头的。这也表明Imagination真正开始从指令级并行彻底转往线程级并行(TLP),实现ALU的更高利用率。这么做理论上能够极大提升性能密度。Beets补充说由于管线精简,“compiler也大幅简化了,它只需要在管线中找乘法累加实现100%运算即可,架构中也更容易实现高利用率,是设计中实现性能密度和能效提升的重要组成部分。”5H0esmc

不过有这么宽的ALU,如何改进整个架构的前端,去喂饱这么宽的执行单元就成为一个问题了。前端调度效率低的话,这么宽的ALU管线只会出现大量闲置,以及效率的下降。5H0esmc

针对这部分,Beets在演讲着重介绍了data master(数据管理)——各种不同的data master将工作负载分配到GPU中去,比如有Geometry Data Master负责几何数据管理;还有2D Data Master、3D Data Master,以及Compute Data Master(负责通用型计算数据管理)。这些不同的data master基于内存的命令队列中读取数据,驱动任务负载进入GPU。

本文为国际电子商情原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
黄烨锋
欧阳洋葱,编辑、上海记者,专注成像、移动与半导体,热爱理论技术研究。
  • 微信扫一扫,一键转发

  • 关注“国际电子商情” 微信公众号

近期热点

广告

EE直播间

更多>>

在线研讨会

更多>>