苹果A12处理器:低功耗小核心集群和NPU集群解密
扫描二维码
随时随地手机看文章
上周我们对全新iPhone XS和A12处理器进行了深入分析,不过主要部分集中在CPU的大核心集群以及GPU集群两方面,对A12的低功耗小核心集群和NPU集群并没有过多描述,本文便来继续探究这两部分。
与大核心Vortex非常相似,A12的Tempest核心的最大改进体现在对内存敏感的测试项中。,而输给A11的Mistral核心主要是由于频率劣势。总体而言,除了内存改进之外,Tempest核心在性能上与Mistral核心非常相似,这也为我们对比二者的能耗比提供了便利。
但不幸的是,Tempest核心相比Mistral核心的能耗比提升并不如大核心一样巨大,纵观SPECint2006测试,Tempest核心的能耗比提升了35%,考虑到Mistral核心的频率更高,实际同频下的能耗比提升还要低于35%。而在浮点基准测试中,Tempest核心的能耗比平均只提高了17%。
如果将A11和A12的小核心与大核心以及来自Arm的竞争对手放在一起对比,其实并没有太大的惊喜。与苹果的大核心相比,小核心的性能大概只有三分之一到四分之一,但它们消耗的能量却足有大核心的一半。
(小核心的功耗只有大核心的七分之一到八分之一,但因为性能较低,执行相同任务所用的时间更长,因此实际消耗的能量为大核心的一半)
不过令人惊讶的是,在SPEC的整数工作负载中,A12的Tempest核心和A11的Mistral核心性能甚至相当于2.1GHz频率下的Cortex A73,但Mistral核心的功耗却仅有Cortex A73的41%(A11和麒麟970同为台积电10nm)。不过在浮点工作负载中,小核心由于没有专用的浮点执行单元而失去了性能上的竞争力,但它们仍能提供很高的能效。
从测试来看,苹果的小核心要比Arm的小核心性能要高得多,从私下里积累的Cortex A55测试成绩来看,Tempest核心的性能大概是Cortex A55的将近3倍。Arm小核心的性能在实际使用中很容易成为短板,这意味着我们未来可能会看到更多像麒麟980这样的的“大-中-小”三集群SoC,而Arm也应该思考一下小核心是否还应该继续使用性能低下的顺序执行架构。
NPU神经网络推理性能测试
A12另一个重大而神秘的进化是自主研发的全新NPU, NPU在A12芯片上占据了较大的面积,几乎相当于两颗Vortex大核心。
幸运的是,鲁大师的AImark支持iOS,使用Apple的CoreML框架来加速与Android相同的推理模型,可以直接对比苹果和安卓阵营处理器的神经网络推理性能。
从结果来看,虽然苹果公布的理论性能(A11:0.6TOps,A12:5 TOps)在这个测试中并未得到很好的验证,但提升依然达到了4~6.5倍。测试中还发现,拥有NPU的A11成绩并没有比A10高出许多,这可能是由于A11的NPU从未通过API公开展示,因此在测试中只能使用GPU来执行CoreML。
华为P20 Pro的麒麟970比A12落后大约2.5倍,恰好与各自宣称的NPU理论性能比例相同(2TOP和5TOP)。而华为表示,麒麟980的全新双核NPU比麒麟970的NPU快2.2倍,每分钟可实现4500次推断,由此看来麒麟980的AI性能应该能够追平A12。
高通骁龙845的表现也很好,在不同特性的测试中与麒麟970互有胜负。由于AJmark目前还不支持NNAPI,只能使用SNPE框架进行推理加速,因此Pixel 2和Note9不得不使用CPU来进行运算,测试结果很差。
功耗方面,A12的NPU满载功耗约为5.5瓦,且整个测试期间的功耗有很大起伏。这一功耗水平意味着苹果希望拥有最高的突发处理性能。使用GPU加速AI处理的A11和10功耗在2.3瓦到5瓦范围内,具体取决于推理模型。