科技 > 办公 > CPU

苹果Mac换用ARM 跑X86软件真的不会卡吗?

178人参与2020-11-14

相信大家都已经知道,苹果在最新一场秋季发布会中,宣告了全新的macbook产品。新macbook换用了苹果自研的基于arm架构的m1芯片,苹果从x86阵营转向,投入了arm的怀抱。

苹果mac换用arm 跑x86软件真的不会卡吗?

苹果macbook换用arm芯片

在传统观念中,arm是用于移动平台的架构,和桌面的x86芯片相比,arm芯片的能效更高,但性能羸弱。这次苹果macbook换用arm,同时macos 11仍对以往基于x86 macos开发的软件兼容,这就让很多朋友感到困惑——用新的macbook跑当前的x86软件,到底会不会卡?

苹果mac换用arm 跑x86软件真的不会卡吗?

之前使用arm芯片的surface平板,运行x86软件效果并不理想,macbook会重蹈覆辙吗?

这种担心是有道理的。在此之前,微软已经做过了这方面的尝试。微软推出了使用arm芯片的surface pro x平板电脑,兼容x86的win10软件。然而人们发现,体验并不理想,传统软件运行起来缓慢迟钝。换用arm芯片的macbook会不会有这样的问题?这就来分析一下。

macbook的arm芯片足够强吗?

新macbook跑旧软件到底慢不慢,最关键的因素自然是新的m1芯片。人们普遍认为,arm芯片的性能水平无法和x86比肩,毕竟arm是简单指令集risc而x86是复杂指令集cisc,复杂指令集自然强大得多,但事实上这是一个误会。

苹果mac换用arm 跑x86软件真的不会卡吗?

在规模上,苹果m1芯片足以和顶尖的x86桌面处理器并驾齐驱

cpu发展到今天,risc和cisc的边界其实已经相对模糊了。在当前的x86处理器中,复杂指令也是会分拆成为类简单指令来执行的。

而在规模上,苹果设计的arm芯片已经追赶上了x86,例如a14的芯片面积为88mm?,共110亿个晶体管,而amd最新发布的zen3处理器中一个ccd的面积为80.7mm?,共41.5亿个晶体管。

考虑到a14还封装了ai模块、gpu等,a14芯片使用的是5nm工艺,而5800x使用的是7nm工艺,事实上大家的cpu单元部分,规模已经是并驾齐驱。

了解了规模,再来看看性能实测,这里引用anandtech的数据。anandtech使用了行业权威性能测试套件spec 2006来对比测试苹果a14、amd zen3以及英特尔tiger lake的性能,结果如下。

首先是整数性能,可以看到a14并不落下风。

苹果mac换用arm 跑x86软件真的不会卡吗?

再来看看浮点性能,a14和zen3要明显领先于tiger lake。

苹果mac换用arm 跑x86软件真的不会卡吗?

anandtech还使用了大家非常熟悉的geekbench来测试,结果如下。

苹果mac换用arm 跑x86软件真的不会卡吗?

可以看到,在单线程性能上,a14的确已经能追上当前顶级的x86处理器。这次苹果macbook使用的m1处理器,架构和a14相似,但规格更高,晶体管规模达到了160亿个,增加了两个大核心,在性能上方面是可以令人放心的。

其实到了这里,我们也不难找出为什么surface pro x运行缓慢的原因。surface pro x使用的是高通sq1/sq2处理器,这基本是骁龙855的马甲。而即使是骁龙865+,对比a14以及最新的x86处理器,性能也依然不太够看……

此情此景下,加之win10 on arm较低下的指令翻译效率,surface pro x运行x86软件的体验就不甚理想了。

是的,到了这里大家应该也能看到arm处理器运行x86软件,除了自身性能之外的其他影响因素了——操作系统的指令翻译效率。

macos 11的指令翻译效率高吗?

x86软件想要在arm芯片上运行,需要进行指令翻译。虽然arm指令集并不意味着性能低下,但毕竟它和x86还是不同的,指令需要翻译过来,才能让arm芯片执行。

在今年的wwdc大会上,苹果已经公布了指令翻译的方案。苹果宣布,将会为macos平滑过渡到arm平台,推出rosetta 2中间转换层。

如果你是老果粉,对于rosetta这个词一定很熟悉——苹果mac电脑当年从ibm powerpc架构,迁移到intel x86平台,所使用的转换层正是rosetta。

苹果mac换用arm 跑x86软件真的不会卡吗?

mac迁移平台这事,苹果已经干过一次了,当年mac从ppc迁移到x86的兼容层被称为“rosetta”

rosetta 2的作用在于,它通过指令翻译,可以让arm平台的macos,直接运行绝大部分的x86软件。从苹果的介绍来看,rosetta 2的性能还相当不错,它并不是在软件运行的时候,才翻译指令的,而是在软件安装时就做好了转换。

当然,这也并非说rosetta 2可以实现性能完全无损,它对avx指令兼容并不好,如果x86软件依赖avx乃至avx2,那么在arm平台上由于没有对应的高性能指令,运行效率会有明显下滑。

并不是所有的软件都会用到avx指令集,总体来说,rosetta 2的性能应该还是可以接受的。

苹果mac换用arm 跑x86软件真的不会卡吗?

这次mac从x86迁移到arm,rosetta 2对旧有x86软件的兼容也起着至关重要的作用

至于rosetta 2的实际表现会如何?我们可以从两方面来衡量。

首先是参考rosetta。苹果从powerpc迁移到x86时,也使用了类似方案,当年并没有太多人抱怨rosetta性能低下,我们自然也可以对rosetta 2抱有期待。

其次是参考开发者的实测。实际上,苹果早前就已经推出了基于a12z芯片的mac mini开发机,开发者们很早就能接触到rosetta 2,但到目前为止并没有什么关于rosetta 2性能低下的爆料,可见rosetta 2的实战表现应该相当不错。

苹果mac换用arm 跑x86软件真的不会卡吗?

macbook换用arm之前,arm的mac mini开发机早已经有了,没有传出性能方面的负面消息

到了这里,我们又可以来分析一下为什么surface pro x的表现会如此糟糕了。在surface pro x的windows 10 on arm中运行x86软件,是边转码边运行的,并不像苹果rosetta 2那样在安装时作好转码工作,运行时无需再次转码。加上性能较弱的sq1/sq2处理器,运行x86软件拖慢卡顿也就在情理之中了。

总结

到了这里,相信大家都可以得出结论了。macbook使用的m1处理器性能非常强大,足以和顶尖的x86处理器同台竞技;而苹果又在macos 11中准备了高效的rosetta 2指令翻译方案,因此对于能否流畅运行之前的x86软件,大家无需太过担心。

根据苹果的说法,情况要比笔者文中分析的更加乐观。苹果宣称,m1要比之前macbook所使用的x86处理器性能高1倍,同时功耗仅为25%。从各种角度来看,新的macbook都非常值得期待,一起来静待上市实测吧。

苹果mac换用arm 跑x86软件真的不会卡吗?

新macbook性能真的像苹果公布的那么劲爆么?

- the end -

#intel#cpu处理器#macbook

原文链接: 责任编辑:宪瑞

您对本文有任何疑问!!点此进行留言回复

推荐阅读

猜你喜欢

Intel服务器CPU强大如斯:份额11倍于AMD

03-20

AMD锐龙处理器周岁了!从此不知牙膏味儿

03-03

国产12nm 4核处理器稳了?龙芯中科宣布两大好消息

04-09

多款锐龙5000笔记本现身:Zen2宝刀不老

12-15

闲鱼偷跑Intel至强W-3375X:56核5.1GHz 655W TDP

01-16

三星代工业务遭遇不顺 消息称部分5nm EUV良率低于50%

07-06

代号“马蒂斯” AMD Zen 2处理器曝光:GF 7nm稳上5GHz

03-10

Zen3性能再提升15% AMD研究3D缓存多年:带宽超2TB/s

08-09

热门评论