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

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

5H0esmc

20191206-imagination-8.jpg5H0esmc

比如3D Data Master,还执行一些其他的固定功能预处理,包括HSR(隐面消除,是GPU的核心技术之一)、针对shader的工作负载生成。随后进入到“Triangle Task Merging”(三角形合并)——Beets表示这是一个关键模块;PDS(Programmable Data Sequencer,可编程数据定序器)再对资源进行分配管理,为工作负载和管理任务预留寄存器空间——这个组件能够针对未来的线程从cache中预取数据。5H0esmc

接下来是指令scheduler(调度器)和decoder(解码器),分发解码后才正式进入到执行单元。然后就是128-wide的ALU了,这里值得一提的是,在主ALU管线之外还有一个副ALU线路方案(Secondary ALU),如上图所示。这部分管线仅有主ALU管线1/4的宽度,每周期并行执行32个线程,不过有一些更为复杂的指令,执行任务包括各种操作与迭代、数据转换、超越指令等。Beets表示,在更低的速率上工作,是基于对真实应用场景各种工作负载所做的权衡。“针对ALU结构,我们分析了大量应用,去理解其中的平衡点,实现最高的效率。”5H0esmc

弹性化扩展

以上是对单个ALU簇的大致理解,也是A-Series获得性能暴涨的主要原因。我们往更高层级看一看其架构变化。在多年前的Rogue架构分享中,Imagination曾有一度将每个USC(Unified Shading Cluster)算作一个核心。到A-Series看来,大概已经不能这么算了,因为其性能扩展方式比较“模块化”。5H0esmc

前文谈到的这样一个主体128-wide ALU管线实际就是一个USC。这样一个USC,加上周边的固定功能单元,比如TPU(纹理处理单元)、HSR(隐面消除)、各种针对不同数据的管线(如针对几何数据处理、光栅处理、混合处理等),以及可实现更高层级共享的cache,也就共同组成了一个真正意义上的“核心”,只不过这个核心比较大型。下面这张图就是一个完整的核心,在A-Series的弹性架构中构成真正的、完整的一个IP方案。5H0esmc

20191206-imagination-9.jpg5H0esmc

在AXM 8-256方案中,这样的一个GPU“核心”内部有一个ALU簇(即一个USC),一个TPU纹理处理单元,以及其他专用单元。而在更高配置的AXT 16-512产品中,一个“核心”则包含了两个128-wide的ALU簇(达成每个时钟周期512次浮点运算),两个TPU(达成每个时钟周期采样16个双线性过滤texel)。5H0esmc

作为对比,Mali G77标称每个时钟周期 64 FLOPs、2 texels,也就是说一个AXM 8-256核心就相当于8个Mali G77核心的性能水平。这其实也表明了Mali仍在走GPU的小核心、多核心路线,而Imagination在走宽核心路线。5H0esmc

20191206-imagination-10.jpg5H0esmc

而如果是性能更高的AXT 32-1024,就是将这样一个GPU核心“复制”一份,实现性能翻番;那么达到最高配的AXT 64-2048实际上就是四个这样的核心。与此同时,针对各种单元的调度和监控,有一个小型的固件处理器(firmware processor),这一点将在后文中进一步提及。5H0esmc

Beets说这样的弹性架构,可以方便地选择性能提升,或者通过减少并行管线、纹理单元的方式,实现符合自身应用所需的配置。5H0esmc

20191206-imagination-11.jpg5H0esmc

尤为值得一提的是,他特别列举了各种操作类型在流经GPU时的全套逻辑。比如上面这张图就是几何图形处理过程(geometry processing flow)的例子,绿色模块表示的是需要处理这些数据和操作所涉及的模块,箭头则表示整个流程方向:GPU获取到内存中的命令结构,Geometry Data Master首先检查内存中的命令队列,获取命令并将工作负载推到GPU内部;随后读取几何图形,各种各样的三角形就会填充到cache中,再进入几何图形管线(geometry pipeline),之后流经ALU,返回的结果还需要进入到Tiling Engine(因为Imagination的GPU IP是典型的Tile-based Rendering基于块渲染的架构),将这些三角形转换至应用于屏幕不同的tile区域,最终输出到内存。

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

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

近期热点

广告

EE直播间

更多>>

在线研讨会

更多>>