Arm V9:机器学习/微架构和内存子系统

Arm在十年前,带来了arm V8.0指令集,而在十年后的前几天,终于也带来了更新的arm V9.0。Arm V9.0本身是arm V8.5的基础之上构建的。也就是说arm V9.0拥有arm V8.5的所有子集,在这基础之上又添加了部分全新的子集。

这意味着Arm V9.0拥有对8.0的兼容,而相当部分IP甚至不拥有8.0之后更新的子集。

机器学习性能强化

CPU的绝大部分使用场景都是进行强逻辑性的负载,这意味着这类型负载天生就几乎不可能并行化。这也使得CPU的很多微架构手段,比如多级流水线和拓宽架构很容易达到本质并行度的极限。而今天主要的改动空间都在于内存子系统,显然的是,这个角度上CPU的性能提升已经是缓慢的,也是已经没有太大提升空间的,甚至看起来这些改动都是非常不起眼的。

而随着神经网络带来的整个行业的变革,这类型的负载会在移动设备上越来越多。而CPU也在追赶这个行业潮流,抛开在安全性(security)方面的改动。整个arm V9.0最核心的改动就是支持了SVE2.0

SVE本身就被Arm V8.2包含,但是实际上使用了SVE的只有Arm Cortex V1,而V1核心是给服务器使用的。

SVE拥有可变的128-2048bit的向量大小,还包含了FP16点积等机器学习的拓展集。更加灵活的SVE应该能够更好的发挥硬件性能。

arm明确写了GEMM和BF16需要V9.1拓展,类似的WikiChip也同样标注。

可是需要注意的是矩阵乘法指令(GEMM)和BF16这样的子集是arm V8.6添加的子集,而基于arm V8.5的V9.0并不会支持,这需要等到V9.1才会支持。但是就和上一代8.0之后的版本很少实际出现在实际IP上,9.0也可能会出现相同的情况。也就是GEMM和BF16的支持可能依旧会限制在服务器之类的少数的IP上。而NEON为了保证兼容性依旧被保留。

Arm还展示了不同需求下,不同类型性能的依赖情况。可以看到的是,在比较常用的语音助手可以被GEMM和SVE很大程度的加速,而视频增强就非常依赖GEMM的性能。实际的使用场景还有比较离谱,这可能也是ARM把这些自己拓展放V9.1的缘故吧。

微架构:距离苹果还有多少差距

在讲到微架构的时候,就需要提到,CPU架构并不是以时钟性能来评价的。一个IP的三个要素:性能、功耗、面积。这里就根本没有CPU频率的事,在这基础之上的基于PPC的评价,也无非就是一群PC玩家空瓶子晃荡的结果。

在去年,NUVIA伴随着的是他们的phoenix微架构,同时也提到了GeekBench5的性能功耗曲线。依照那张曲线和今天的骁龙888的曲线的对比。

可以看到,骁龙888拥有和A13几乎一致的性能功耗曲线。还需要注意一下,前面的内容已经有过解释,三星N5实质上事三星N7++,这依旧是一个N7节点的工艺,而实际上也确实,功耗几乎和TSMC N7P保持一致。这是一个工艺水平几乎一致的情况下的对比,至少可以说的是,在去年发布的X1上,arm的微架构显然已经达到了A13的性能水平。

而在A13之后的A14,我又提到,苹果在A14的Firestorm下,即使对内存子系统进行了改进,但是在依赖时序的整数性能下,依旧提升有限。

这也就意味着,今天Arm和苹果的微架构在大约一代左右,而苹果的固有优势就事可以跑上高得多的功耗换取峰值性能

Arm预期,在两代微架构上能够提升30%的性能,这意味每一代提升14%。如果厂商配合预期的工艺,要追赶苹果似乎已经不是一个困难的目标了。

但是,另外一方面,高通收购了NUVIA,而NUVIA的核心人员正是操刀苹果大核心的。NUVIA的phoenix(凤凰)微架构,预期了一个非常优异的性能功耗。正如上面所绘制的紫色的phoenix性能功耗曲线,即使是最坏的发挥,phoenix依旧具有于A14几乎一致的表现。而搭配更好的工艺,pheonix显示出了Arm难以逾越的表现。

Arm还展示了更多的预期,也显示了内存子系统的重要性。

PS.由于局部性原理,显然缓存越大,增加相同大小的缓存提高的命中率越少,性能提升越小,显然的具有收益递减的趋势。我原本认为这是最简单的部分是不需要提及的。

内存子系统的改进包括,把内存延迟从150ns缩小到90ns(需要注意的是,你并不知道ARM事运行的什么代码测试的内存延迟,所以这很大程度是一个ARM说了算的参数),CPU频率从2.6GHz提升到3.3GHz(同样的,ARM也不知道是以什么基准确定的频率,2.6GHz似乎是一个中高端定位的SoC所运行的频率,如果是旗舰或许还会放开到更高的频率),内存带宽从20GB/Sec提升到60GB/Sec(这更多依赖内存的发展),二级和三级缓存翻倍。

这些很多改进应该会算进PPC改进的,比如内存延迟和缓存。所以着很大程度上就是在展示内存系统有多重要,可以计算的是,以ARM所标示的,仅缓存翻倍和内存时延就会带来22%的性能提升,考虑带宽的标示可以达到27%的同频率提升。

除了X系列大核心,服务器的N2架构是基于A78下一代的架构的服务器版,同时ARM有预期了每一代14%的提升。所以至此,我们可以大约知道,接下来两代的X系列核心和A79核心的时钟性能的预期:

xian333c

tech nerd,Vup

您可能还喜欢...

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注