随着苹果在iPhone 5s上祭出“业界首枚64bit手机处理器”,果粉们似乎找到了新一轮嘲讽Android的武器:Anandtech等权威媒体测试表明,运行频率仅 1.3GHz的双核A7处理器,性能堪比安卓手机中的四核Cortex A15处理器。“Android就知道拼硬件,四核八核做出来,还不如我家苹果双核快,丢脸不丢脸?”
实测:双核秒杀四核/八核
好吧严肃一点,让我们先把得意洋洋的果粉放到一边。事实上A7处理器“以双核战翻四核”这个近乎于神话的结果本来也很有趣,这是否是苹果远远抛开业 界设计水平的佐证呢?要知道在如今的处理器设计中,在同样的功耗前提下即便是差距大如英特尔 vs ARM,也几乎不可能做到一个核心对抗对方两个核心,更别说是ARM阵营的内部斗争了。
A7处理器兼容下一代ARMv8 64bit指令集,核心架构由苹果自行设计
跑谷歌Octance Java这种单线程性能需求强劲的代码,iPhone 5s把几乎所有安卓手机都轰成了渣。
运行Sunspider Javascript测试程序时也获得了类似结果,GS4大概只有iPhone 5s一半的性能。
诚然,Apple A7是一枚设计优秀64bit的处理器,64bit带来的额外寄存器资源如果优化得当,应用程序可获得近乎翻倍的性能提升,但即使在现有的32位环境中,iPhone 5s表现依然抢眼,苹果是如何做到这点的?
应用程序64位化之后,往往会带来一些不可思议的性能提升,图中iPhone 5s运行64位AES加密时性能较32位提升了825%
要解答这个问题,我们必须梳理一个思维盲区:直到现在,唯性能论者的潜意识里,各家厂商的处理器核心都是差不多的,因此超过一倍的性能差距往往会让人觉得不可思议。但问题是:不同处理器的核心架构真的差不多吗?或者我们换个问法:熊的力气超过人类两倍,这有什么奇怪的吗?