来源:内容由半导体行业观察(ID:icbank)编译自「anandtech」,谢谢。
在上个月Arm发布了最新基础架构Neoverse V1和Neoverse N2 CPU IP之后,现在是时候该讨论Arm在客户端和移动方面的进展了。今年,Arm的情况比往常要大得多,因为我们看到了面向移动设备和客户端的三种新一代微体系结构:旗舰级Cortex-X2内核,以Cortex-A710形式亮相的新A78后续产品,还有名为Cortex-A510的全新小核心。
这三个新CPU构成了Armv9兼容设计的新三重奏,旨在标志着行业中很少出现的更大的体系结构/ ISA转换。
除了新的CPU内核外,我们还看到了新L3和群集设计——DSU-110,Arm还通过新的缓存一致性CI-700网状网络和NI-700NoC IP对其互连IP进行了重大升级。
Cortex-X2,A710和A510是去年X1,A78和A55的后续产品。特别是对于新的Cortex-X2和A710,它们是其前代产品的直接微体系结构后继产品。这些部分在迭代改进IPC和效率的同时,还以Armv9和新扩展(例如SVE2)的形式结合了全新的体系结构功能。
Arm的新小核心Cortex-A510是一个更大的微体系结构跳跃,因为它代表了Arm的Cambridge CPU设计团队的一项新的CPU设计。A510在改进IPC的同时仍继续关注功率效率,并且也许最有趣的是,它保留了其有序的微体系结构特征。
Armv9 CPU系列:仅用于所有实际目的的AArch64 *
新的CPU系列标志着我们多年来最大的体系结构飞跃之一,因为该公司现在将所有三个新CPU IP都基于Armv9.0。早在三月下旬,我们就广泛地介绍了新Arm架构的细节。新ISA的基础功能包括新注册的先前可选/缺失的Armv8.2 +功能,这些功能在移动和客户端设计中无法得到保证(主要是由于较旧的A55内核),以及引入了新的SVE2 SIMD和矢量扩展。
我们期待已久的一大变化是,在即将到来的Arm Cortex-A移动内核中,我们将看到32位AArch32执行模式的弃用。自从Google在2019年宣布Google Play商店将要求上传64位应用程序以来,我们就一直在为32位应用程序倒计时。该公司也将于今年夏天晚些时候停止向64位兼容设备提供32位应用程序,
尽管Arm宣布这一转变将在2023年发生,但就所有意图和目的而言,明年大多数全球用户都已经在发生这种转变。Cortex-X2旗舰内核和Cortex-A510小内核都是仅限AArch64的微体系结构,它们不再能够执行AArch32代码。
话虽如此,信心的读者可能会注意到,三分之二的CPU并不是一个完整的转变,其原因是因为Cortex-A710实际上仍然支持AArch32。Arm表示,这样做的原因主要是为了满足中国移动市场的需求,因为中国移动市场缺乏全球Play商店市场的同类生态系统功能,中国供应商及其国内应用程序市场需要更多时间来促进向仅64位转变。这意味着明年我们将有一个奇怪的情况,那就是只有SoC能够在其中级内核上执行32位应用程序,而这些应用程序被降级到A710内核中级,而错过了A510内核的小功率效率或X2内核的性能。
在核心方面,新的Cortex-X2和Cortex-A710是Cortex-X1和Cortex-A78的后继产品。这两种设计大多由ARM奥斯汀的设计团队设计的,从多年前的A76算起,新产品代表了这个微架构系列的第四代产品。在Arm借助明年的新Sophia内核将其移交给全新设计之前,这些内核应该是该微体系结构家族中的最后一个,
在设计理念上,X2和A710总体上保持了X1和A78所定义的总体目标:X系列继续致力于通过增加微体系结构来提高性能,并且Arm愿意在合理的范围内折衷功率。同时,A710继续致力于通过更智能的设计来提高性能和效率,并着重于最大化IP的功率,性能和面积(PPA)平衡。
在上一张幻灯片中,Arm提出的重点是优化了关键路径(critical paths)和物理设计,以实现持续的电压运行,这更多是该公司在下一代“Middle”内核中追求的目标,而不是在Cortex-A710中专门体现的目标。。
今年,我们也终于看到了一个新的小核心。我们早在2017年就介绍了Cortex-A55,自那时以来我们还没有看到对Arm的小内核的任何更新,以至于它被视为最后几代移动SoC的重大弱点。
全新的Cortex-A510是Arm剑桥设计团队的clean-sheet 设计,它利用了公司较大内核中已采用的许多技术,但将这些技术实施到了新的有序(in-order)小型微体系结构中。是的,我们仍在讨论有序内核,而Arm仍将其视为提取移动设备最佳效率和“使用天数”的最佳选择。
尽管这是一个有序内核,但Arm进行了比较,认为新设计与2017年的旗舰内核Cortex-A73非常相似,实现了非常相似的IPC和频率功能,而功耗却要低得多。
新设计还采用了非常有趣的共享复杂方法,并与第二个内核共享了L2和FP / SIMD pipelines,一个被Arm称为“合并内核”(merged core)的设计方法,这无疑会让读者想起十年前AMD在推土机内核中使用的CMT方法 ,即使在方法上有非常重要的差异。
Cortex-X2:更高的性能,更深的OoO
我们首先从去年的Cortex-X1的继承者Cortex-X2开始。
X1是Arm推出的新IP系列产品中的第一款产品,在这个系列面世后,Arm将其“大”核心产品分成了两个不同的IP产品线,其中Cortex-A兄弟继续了Arm最初的PPA设计理念,而X系列则被允许为了实现更高的性能点而不断发展壮大。
Cortex-X2延续了这一理念,并进一步扩大了其与“Middle”同类产品Cortex-A710之间的性能和功耗差距。我还注意到,在Arm的整个演讲中,都提到了将Cortex-X2用于大屏幕计算设备和笔记本电脑等外形尺寸中的情况,因此这很可能表明该公司的这一代产品,将被应用在上述场景的产品设计中。
从体系结构的角度来看,X2与X1自然不同,这在很大程度上要归功于它对Armv9的支持以及该体系结构的新基准化所带来的所有安全性和相关的ISA平台改进。
如简介中所述,Cortex-X2还是仅64位内核,即使在PL0用户模式应用程序中,也仅支持AArch64执行。从微体系结构的角度来看,这很有趣,因为这意味着Arm将能够消除设计中的某些缺陷。但是,由于该设计是Austin处理器系列的延续,因此,我想知道我们是否会在未来的 “clean-sheet” 大内核设计中看到这种弃用的更多好处,因为从一开始就设计了仅AArch64。实际上,这是Arm的其他CPU内核中已经发生的事情,因为新的小内核Cortex-A510设计为sans-AArch32。
在前端方面,Arm一直在尝试改进其认为微体系结构最重要的方面:分支预测。这包括继续以与获取阶段分离的方式运行(run the branch resolution in a decoupled way)分支分辨率(branch resolution),以使这些功能块能够在错误预测的情况下领先于内核的其余部分运行,并最大程度地减少分支气泡( branch bubbles)。Arm通常不愿就其预测变量在这里进行过多少改动而谈论太多细节,但希望在新的X2和A710内核的分支预测准确性方面取得显着改善,从而有效地降低了MPKI(Misses per kilo instructions)指标,以应对非常广泛的工作负载。
由于Arm能够将dispatch stages从2个周期减少到1个周期,因此新的核心总体上将其pipeline长度从11个周期减少到10个周期。需要注意的是,我们必须将pipeline cycles与mispredict penalties分开来,在大多数情况下,后者在Cortex-A77设计中已减少到10个周期。移除pipeline stage通常是一个相当大的变化,特别是考虑到Arm的目标是保持内核的频率能力。这种设计变更确实招致了一些更复杂的工程,并且具有面积和功耗成本。但是尽管如此,正如Arm所解释的那样,削减pipeline stage仍然可以带来更大的投资回报,从而带来绩效收益,因此非常值得。
内核还增加了乱序功能,这一代产品还将ROB(reorder buffer)从224个条目增加了30%,增加到288个条目。有效数字实际上还要高一点,因为在压缩和指令捆绑的情况下,实际上存储了超过288个条目。Arm说,这一代产品还促进了更多的指令融合案例。
在核心的后端,FP / ASIMD pipelines的一部分有了新的重大变化,这些 pipelines现在支持SVE2。在移动市场,SVE向量长度将继续为128b,本质上,新的X2内核具有与X1的4x FP / NEON流水线相似的吞吐量特性。之所以选择128b向量而不是更高的向量是因为在big.LITTLE设计中需要具有统一的体系结构特征,因为您不能在同一SoC中以无缝方式混合不同向量长度的微体系结构。
在后端,Cortex-X2继续致力于通过将load-store窗口和结构大小增加33%来提高MLP (memory level parallelism) )。Arm在这里采用了几种结构,且通常不会详细说明已扩展了哪些队列,但是一旦我们拿到了X2系统,就很可能能够对此进行衡量。L1 dTLB已从40个条目(entries)增加到48个条目,并且与每一代一样,Arm还改进了其预取器(prefetchers),提高了准确性和覆盖范围。
Prefetchers是今年早些时候在Cortex-X1和A78上使我们惊讶的一个设计,这是我们在行业中认识到的同类产品中的第一个。这能够锁定到任意重复的内存模式上,并识别内存访问中的新迭代,从而能够智能地预取整个模式直至一定深度(我们估计为32-64MB的窗口)。Arm表示,现在覆盖范围以及准确性都得到了进一步的提高,尽管只有在接触到芯片之后,我们才能再次看到这些细节。
就IPC的改进而言,在SPECint2006中,ISO频率在今年数字达到了+ 16%。该度量标准的问题(并且适用于今天所有Arm的数据)是Arm将8MB L3缓存设计与4MB L3设计进行了比较,因此我希望+ 16%的数字中的较大部分是由于较大缓存而不是核心IPC自身进行改进。
就他们而言,Arm重申他们希望明年的X2 SoC使用8MB L3设计,因此,这个+ 16%的数字是现实的,这是用户在实际实现中应该看到的。但是话虽这么说,我们去年还是就Arm期望用于X1 SoC的8MB L3缓存进行了相同的讨论,而Exynos 2100和Snapdragon 888都没有采用。因此我们还是看最终商用的旗舰SoC将采多大的高速缓存。
在性能和功耗曲线方面,新的X2内核在这两个指标上都超越了X1。尽管峰值性能点的确增加了16%的性能,但这确实要付出更高的功耗。
通常,考虑到我们现在在市场上看到的有关处理供应商的节点选择的情况,这有点令人担忧。我们已经看到,高通公司和S.LSI在Snapdragon 888和Exynos 2100中使用的三星5LPE节点在性能和能效方面的交付不足,我通常认为这两个大核的功耗都较高限制散热。我认为高通公司在下一代产品中将继续使用三星代工厂,因此,我对采用旗舰级SoC的任何节点(无论是5LPP还是4LPP)在功率改进方面都持悲观态度。明年我们可能看不到实际SoC的全部+ 16%改善,这很有可能是合理的。
Cortex-A710:性能更高,效率更高
正如前面介绍,Cortex-X2在提供全面性能的同时,要付出功耗和面积上的损失,但Arm的Cortex-A710设计却采用了更有效的方法。
首先,就Arm未来的发展而言,现在新产品的命名是显而易见了的,他们跳过了A79的名称,只是简单地从A710的新的三位数方案开始。这在公司宏伟计划中逼哥不是很重要,但却是有趣的营销方式。
与X2一样,Cortex-A710是Armv9内核,具有新体系结构版本附带的所有新功能。与X2不同,A710还支持EL0 AArch32执行,并且如介绍中所述,这主要是因应中国市场客户要求所做的的设计选择。因为在中国市场,生态系统将所有应用程序迁移到AArch64方面仍然略有滞后。
在前端增强方面,我们看到了与X2相同的分支预测改进,具有更大的结构和更好的准确性。其他结构(例如L1I TLB)也已从32个条目增加到48个条目。其他前端结构(例如macro-OP cache )在1.5K条目处保持不变(X2在3K条目处也保持不变)。
A710中核的一个非常有趣的选择是Arm将macro-OP cache和dispatch stage的吞吐量从6-wide降低到5-wide。这主要是针对这一代产品的有针对性的功率和效率优化,因为我们看到Cortex-A和Cortex-X内核之间在其专业性和性能和功耗的目标用例方面存在更大的分歧。
Dispatch stage还具有与X2相同的优化功能,从流水线中删除了1个周期,从而实现了整个10周期的pipeline设计。
Arm还专注于影响系统非核心部分的核心改进,这要归功于预取器设计的新改进以及它们如何与新的DSU-110交互。内核和DSU的新组合能够减少从内核到L3缓存的访问时间,并且由于效率更高的预取器和更大的L3缓存而减少了昂贵的DRAM访问。
在IPC方面,Arm宣传了10%的提升,但是这里出现的数字又是我们将8MB L3缓存设计与4MB L3缓存设计进行了比较。虽然这可能会与明年的旗舰SoC进行比较,因为Cortex-A710还是可用于中端或低端SoC(可能使用较小的L3缓存)的内核,但我们不太可能看到这样的IPC提升,除非实际的SoC确实能够改善其DSU尺寸。
比性能提高+ 10%更为重要的是,当稍微降低频率时,我们可以看到功耗降低幅度可能很大。据Arm称,在性能相同的情况下,A710的功耗比Cortex-A78少30%。这将大大有助于Cortex-A710的时钟频率适中的“中间”核心实现的持续性能和电源效率。
总的来说,X2和A710的性能和功率指标都相当适中,使其成为我们在Arm几年中看到的最小的一代又一代的数字。Arm解释说,由于这一代随着向Armv9的迁移而进行了较大的体系结构更改,因此对我们在前几代中看到的通常的效率和性能改进产生了影响。
X2和A710都是该奥斯汀微体系结构家族的第四代产品,因此我们正面临着不断减少的收益和成熟的设计壁垒。几年前,我们给人的印象是,奥斯汀家族只能进行三代的工作,然后再将其移交给Sophia团队的全新clean-sheet设计,但是原来的路线图已经改变,现在我们将期待明年的Sophia新核心在性能上能有更大的飞跃。
Cortex-A510:全新的小巧设计
接下来,我们将介绍Arm最新的小内核,即全新的Cortex-A510。新设计是工程师在过去4年中一直在研究的Arm剑桥团队开发的一种clean-sheet的微体系结构,它在将小内核内置到SoC中时标志着一种截然不同的方法。
首先,Arm明确指出了设计继续使用有序执行,并指出他们认为这仍然是为此类工作负载设计内核的最省电方式。当将其置于苹果自己乱序的效率核心的上下文中时,这仍然是一个相对有争议的话题和讨论点,我稍后将再次讨论该话题。
其次,Cortex-A510引入了一种称为“合并核心”(merged-core)的微体系结构,这与AMD十年前在其Bulldozer内核中对CMT所做的一些非常高的比较和相似之处,但是在某些重要方面却有很大不同。细节和设计方面。
当然,与X2和A710一样,A510是Armv9设计,并且所有三个内核彼此共享相同的架构功能,从而可以将它们集成到同一SoC中。值得注意的是,与X2一样,A510是仅64位的AArch64内核。
Cortex-A510最有趣的方面是新的合并核心方法。Arm在这里所做的事情是创建一个新的“复杂”,最多两个核心对,它们共享L2缓存系统以及它们之间的FP / NEON / SVE pileline。
乍一看,这听起来与AMD使用Bulldozer和CMT(Clustered Multithreading)方法所做的极为相似,但是Arm的设计在实际内核共享方面更加分散。AMD的CMT模块主要由两个整数后端和一个FP / SIMD后端之间的共享前端组成,而Arm的“合并核心”实际上是具有各自前端,中核,整数后端和L1缓存层次结构。“核心”之间共享的唯一内容是实际的FP / SIMD后端以及L2缓存层次结构。
此外,虽然我们希望在移动市场中,供应商能够在每个复杂方法中使用这两个新的合并核心,但实际上有可能仅在每个复杂中仅使用一个核心。在这种情况下,独立核心将本质上具有其自己的专用(非共享)资源,但是与预期的合并核心方法相比,其区域效率显着降低。
通常,考虑到采用SVE2以及新执行后端所需的相对较大的占位面积,为这些微小的新内核实际共享这些资源是很有意义的。它们的典型工作负载也大多仅为整数绑定后台工作负载,这对此类单元造成的压力较小。
从更高级别的SoC角度来看,内核数量并没有真正改变,细节是我们将看到两对或小的内核现在彼此之间共享更大的L2缓存。该L2最多可配置为512KB,但一如既往,我们在产品中实际看到的内容将很大程度上取决于供应商要在其设计中实现的内容。由于新的综合系统也仅占用DSU上的单个接口,因此也为大于8个“核心”的设计提供了可能性,我希望这种情况不会发生,或者希望仅通过更多的中型或大型核心发生。
就新A510的前端而言,我们看到了一个128位的fetch pipeline ,这意味着它每个周期最多可以获取4条指令,这给前端留出了一些余地来关闭分支气泡。解码器的实际宽度已从2宽增加到3宽。
在分支预测方面,一如既往Arm并未透露太多细节,但该公司确实指出,它在大型核上使用了相同的最新方法和技术。L1指令高速缓存可以是32KB或64KB。
就共享向量执行后端而言,这实际上非常有趣,因为Arm可以选择使用较小的2x64位流水线或2x128b流水线配置复杂系统,后者的吞吐量将是Cortex-A55的2倍。我不太确定将与哪些移动设备供应商合作;我们始终希望有更大的配置,但一如既往,我们将不得不拭目以待,看看实际产品中将采用什么配置。在这两种配置中,向量长度均为128b,因为这是大型核心微体系结构互操作性的要求。
Arm指出,Shared pipelines对硬件是完全透明的,并且还使用了细粒度的硬件调度。在同时使用两个内核的实际多线程工作负载中,与为每个内核专用的pipeline相比,性能影响和不足仅占百分之几。这基本上是为什么Arm决定使用这种面积更有效的合并核心方法的基石论据。
尽管这是一个有序的体系结构,但Arm仍然扩展了Cortex-A510的后端,该后端现在包括3个ALU,一个复杂的MAC / DIV单元和一个分支转发端口。这里的解释很简单,当有适当的指令序列要执行时,就有更多的机会在更少的周期内执行更多种类的代码块。
最后,在负载存储系统中,与Cortex-A55相比,新结构得到了极大的改进,因为我们看到了从负载和存储管道向负载和负载/存储管道的转变,这有效地使存储结构增加了一倍。每个周期执行的负载数。管道的宽度也增加了,从64b的宽度增加了一倍,达到128b的宽度,因此与Cortex-A55相比,负载带宽实际上增加了三倍。
A510还采用了我们在其他最近的大型Arm内核中已经看到的类似的非常先进的预取器设计,并增加了该内核能够实现的巨大性能改进。
在性能指标方面,就像在X2和A710演示幻灯片上一样,A510的数字也不尽相同。据说两个核心之间的频率是相同的。在这种情况下,我们看到SPECint2006中的+ 35%和SPECfp2006中的+ 50%,这似乎是非常可靠的世代改进,但是考虑到缓存层次结构的差异以及我们将得分与4年以上进行比较的事实从旧的核心来看,实际的改进,尤其是从复合年均增长率(CAGR)来看,似乎并没有那么令人印象深刻。
在发布CPU的同时,Arm还带来了全新的CPU家族Mali-G710旗舰系列,G510中端系列和新型超区域高效Mali-G310的广泛产品阵容。
在高端产品上,Mali-G710是Mali-G78的直接继承者,在目标上是相对简单的世代改进:Arm的架构师可以在Mali GPU中实现最高性能。Mali-G610是一项品牌推广活动,旨在以更少的核心数量区分与G710相同的微体系结构,目的是帮助合作伙伴更好地区分旗舰产品与“高端”产品。
Mali-G510是2019年Mali-G57的后继产品,是Arm中档产品组合的重大升级,带来了极大的功耗性能提升,并在功率效率方面比以前的产品有所提高。
最后,新的Mali-G310是基于Valhall的新低端产品,代表了基于Bifrost的Mali-G31的多代架构升级,并瞄准了以低面积效率为重点的市场我们看到了数千亿的低成本设备和其他嵌入式市场,例如智能电视。
Mali-G710:使每核性能提高一倍
作为Valhall GPU架构的延续,新型G710执行引擎的基础特征与上一代Mali-G77和Mali-G78相似且大致相同。
我们在Valhall看到的更大变化包括从wavefront/warp 大小8到16的转变,每个执行引擎具有dual datapaths (clusters) ,从而在G77和G78中看到了32 FMA /核心设计。
据说ISA已经有了Vulkan等新的现代API所设计的更大改进,但始终很难量化此类更改对GPU的整体性能和效率的影响。
Mali-G710的新增功能是添加了第二个执行引擎,有效地将Valhall架构的每个着色器核心(shader core)的计算性能提高了一倍。从某种意义上说,Arm在这里重新采用了我们在上一代Mali体系结构中所见过的一些扩展手段,例如与Mali-G76每个着色器核心具有三个执行引擎的情况相比。
在上面的幻灯片中,“ 8x”和“ 4x”指标与每个内核的每个周期的吞吐量有关,通过这些指标我们可以看到,GPU的其他功能块在吞吐量方面也提高了一倍,以保持执行引擎的计算执行吞吐量提高了一倍。
新的G710包括一个全新的纹理单元(texture unit ),现在每个时钟可以处理多达8个双线性纹理元素,Arm通常对新设计进行了优化,以显着提高面积效率,从而使新的TMU具有+ 50%的性能密度优势。
在执行引擎中,Arm继续使用两个处理单元或处理元素集群,在这方面,我们看不出各代之间有太大差异,但是,如果我们更深入地研究实际的处理单元,则会对块进行更改:
在最简单和基本的解释中,我们看到的是从一个16宽(warp wide))处理元素和执行单元的单个实例转换为四个4宽执行单元的实例。设计之间的吞吐量没有改变,但是新的微体系结构为处理元素提供了更多的专用资源,并允许更好的结构以提高效率。
总的来说,新的执行引擎设计使FMA每个内核的每个时钟频率提高了一倍,这在某种程度上是显而易见的,但是它还具有将执行引擎在着色器内核内的能量分配降低20%的好处。
G710的另一个非常重要的亮点是用新的“Command Stream Frontend”代替了传统的“Job Manager”,该“Command Stream Frontend”可以处理draw-calls的调度和处理。CSF引入了一个未公开性质的新CPU,并且现在还将首次向Mali GPU引入固件层。
该设计的目标是为更复杂的图形工作负载实现更灵活和可扩展的性能,同时通过为其提供非常轻量级的submission path来减少驱动程序开销,从而提高系统CPU的电源效率。它有助于简化对API功能(例如状态继承和辅助缓冲区)的支持,以及处理对时间敏感的应用程序(例如VR或time-warp应用程序)。靠近硬件的距离以及由此带来的等待时间的减少也极大地受益于同步事件。
固件与硬件紧密耦合,可以处理来自主机的请求或命令缓冲区完成通知,减少诸如受保护的入口退出之类的开销,甚至还可以通过额外的功能来模拟硬件中尚不存在的API功能。指示。
新硬件从头开始进行了重新设计,以便能够跟上最新内容,并允许将job submission 吞吐量传递到其他GPU单元中。Arm在这里声称,新的CSF每秒最多可以进行500万次调用。
总体而言,新的G710微体系结构看起来非常有趣,尤其是要解决与Arm的Mali GPU的API开销相关的一些弱点。如何发挥作用还有待观察,但从这一代人所宣称的20%的性能和功率效率增益来看,这似乎是一个稳固的进步,尽管这些数字不足以改变移动市场的竞争格局。
Mali-G610是与G710相同的微架构,只是内核配置低于7个内核而使用了不同的名称。
Mali-G510和G310:攻占低端
在中档中,新的Mali-G510和Mali-G310是对市场上正在使用的前辈产品G57和G31的代升级。这些新设计代表了微体系结构中的新重大突破,对于Arm的中端和低端产品而言,这是自然而然的大性能提升。
从很高的角度来看,G510可从2核扩展到6核,但通过更改每个核之一的执行单元中的簇数,或更改使用的纹理单元的类型(4倍的吞吐量)来提供差异化单位或8x单位。
在执行引擎方面,我们总是有两个执行引擎,但是可以将其中一个执行引擎配置为仅包含一个集群,从而有效地将核心的计算部分从64 FMA /周期设计减少到48 FMA /周期设计。这种粒度的原因是此类GPU的普通客户具有超优化的用例,并将针对特定用例和标准配置其GPU实施,并且仅使用最小的最小配置来满足这些需求。
Arm在这里重点介绍G510 IP的10种不同配置选项,它们均具有不同的计算或填充率优化性能点。对于读者来说,了解这种可配置性的需求可能有点不直观,但是在实现方面,有些非移动市场真正关心每平方毫米的几分之一。
新的G310可进一步扩展到G510以下。与上一代最小的Mali IP产品G31相比,此GPU实际上是一项重大的性能飞跃,因为我们看到了从Bifrost架构到新的Valhall设计的转变。
在这里,我们看到采用了新的执行引擎设计,但是允许将集群进一步缩小到每个EE仅一个集群,并且还允许在最低配置下仅允许一个EE,从而允许扩展16、32、48或64 FMA每个着色器核心。纹理单元还可以最小缩小到2个纹理像素/周期单元,并且看到一个变化的单元,与其较大的同级对象相比,该单元被缩小了。
G310仅是单个着色器核心设计,因此配置是通过更改该核心内的不同执行单元来唯一实现的。不幸的是,Arm似乎并未针对各种配置计划任何公开的命名方案,因此,厂商将有责任进行任何形式的披露。