APP下载

为何Apple自产自销的ARM处理器这么厉害(下)

消息来源:baojiabao.com 作者: 发布时间:2026-07-18

报价宝综合消息为何Apple自产自销的ARM处理器这么厉害(下)

Apple从2013年九月iPhone 5S的心脏A7“Cyclone”开始迈进64位元的世界,也以此为起点,Apple Ax应用处理器开始展现惊世骇俗的效能优势,从2015年六月赶尽杀绝32位元应用程序,直到今年的iOS 11中止支援32位元处理器(意思就是只回朔支援到iPhone 5S),更是深具重大意义的里程碑。

64位元是为了破除高效能架构障碍

但64位元运算真的有这么神奇吗?当然不是,真正有举足轻重影响的,是ARM指令集扩充到64位元时,“顺便”带来的革新,特别是移除了打造高效能微架构的重大障碍。

要提高处理器效能,不外乎增加每个时脉周期可处理的指令数:

  • 提高时脉,对于行动装置来说,这几乎是难以考虑的选项。
  • 增加同时可以平行处理的指令数量,像硬件指令排程的超纯量(Superscalar)和编译器决定如何“一个萝卜一个坑”的超长指令集(VLIW)。
  • 接着,提高管线效率,特别是当发生同时执行的指令,要存取相同暂存器而强碰时,就需要以“暂存器更名机制”为中心的“非循序指令执行”来解决。

前面有提到,电脑有别于计算器的最大差别,在于“条件判断的能力”。

你可将计算机程序的正常执行流程,想像成一个“棋盘”,以一个角落当做起点,对角线的角落作为终点,在棋盘上反复移动,不限制前进或后退。如发生条件判断的分支(Branch),或无条件判断的跳跃(Jump),就会变更指令流,并且中断指令管线的运作,特别是必须先等待条件判断的执行结果,才能决定该分支是否发生的分支,对效能的伤害尤其明显。

所以某些指令集就具备了所谓“引述执行(Predicaton)”的能力,包含32位元的ARM指令集。一个在一般指令集的简单条件判断(相信各位一定看得懂):

beq ra, label   // if (ra) = 0, branch to ‘label’
or rb, rb, rc     // else move (rb) into rc

改用具备引述执行的条件搬移指令,一行就解决了,避开了分支指令,也无须启动分支预测机制。讲的直白一点,就是把所有相关工作打包起来送作堆,一次搞定。

cmovne ra, rb, rc

这对追求高度平行化的指令集,有着莫大的吸引力,所以也不外乎多数超长指令集(VLIW)电脑,都具备这样的能力,包含Intel的IA-64(Itanium),连x86从Pentium Pro开始也有cmov体系指令,只是因种种因素不那么实用,而逐渐边缘化了。

引述执行Predication的缺点

但天底下没有白吃的午餐,先不提“事后”才支援引述执行的困难度,引述执行不但会增加处理器的工作量,更会提高指令管线前端的复杂度,不仅不利于提升时脉,更会影响非循序指令执行引擎的设计,因为暂存器重新更名机制要“替身”的资料就更多了。很讽刺的,原本寄望可以提高指令平行化的引述执行,竟然反过来变成了打造高效能微架构的麻烦制造者。

64位元的ARMv8-A取消4位元引述执行(Predication)码,将省下的指令编码位元数,挪为倍增资料暂存器之用,不但降低了发生暂存器相依的概率,一并解除实作更高效率非循序指令集执行的紧箍咒,更是“在指令集扩充之路上,设法搬移未来微架构路障”的经典案例,这远比整数逻辑运算暂存器和内存平面定址空间扩充到64位元还重要上百倍。

苹果看到的64位元大未来

基于未来性,Apple也很早就把重心放在64位元效能,根据某些实际的指令排程输出率测试,Apple兼具32/64位元相容性的Ax应用处理器,64位元的指令输出量,就几乎是32位元的足足两倍,例如每个时脉可输出6个64位元指令,32位元就会腰斩。当然,Apple自家芯片亦具备极度优异的内存效能,A10X改弦易彻走向大型化L2快取,也隐约透露出些有趣的弦外之音,这就有赖前P.A.Semi团队的功力了。

问题又来了,那为何A11会强到破表?

有没有想起来,iOS 11已纯粹对应64位元环境?那A11为何还要硬扛着相容32位元ARM指令集的包袱呢?服务器导向的Qualcomm Centriq 2400就是“纯64位元”ARM处理器。少了后顾之忧,自然就可以把所有晶体管预算砸到刀口上,效能自然好,这就是Apple同时掌握全部软硬件的天然优势。

最后,不提A11,光A10每个时脉最多可同时输出4个整数、2个浮点和2个内存载入,就已经很接近IBM Power7的水准,几乎是其他ARM对手的两倍,真是吓死人了。A11有多可怕?我们以后再研究,谢谢收看。

连载告一段落,看到这里应该对苹果自家处理器有些想法,与我们分享看看你觉得这系列如何吧!

为何Apple自产自销的ARM处理器这么厉害(上)

为何Apple自产自销的ARM处理器这么厉害(中)

为何Apple自产自销的ARM处理器这么厉害(下)

2018-05-17 22:33:00

相关文章