arm有啥不同 intel_x86和arm 性能究竟差多少?

谢邀

旗舰型号,是指苹果的A11和至强铂金8180么?目前跨平台的评测软件经常被拿出来的是GeekBench,贴一下官网的评测结果咯:

X86单核:

安卓单核:

iOS单核:

x86多核:

然而这不是x86平台的最高水平:

上图可以看出,Windows平台得分太低,Linux下双路系统,11.8W得分,单路估计在6W左右。

安卓多核:

iOS多核:

更详细的结果对比(x86是双路系统,多核部分x86结果除以2):

下面是私货:

我个人的看法,CPU的性能,就是完成某项计算工作需要的时间。所以要对比性能,那么看两个产品完成同一项工作的时间就好。不就数秒么,很好评估吧?拿衣服。

1、我们要假设周边设备的性能并没有造成瓶颈——其实这个前提本身就不可能实现,目前CPU是整个系统中运行频率最高的芯片,内存芯片运行频率比CPU慢的多,更别说硬盘网卡什么的了。不过无所谓,我们都给配上能买到的最高性能配件就好。

2、不同指令集的CPU,这个“同一项工作”本身是不可能存在的——除非是二进制兼容的两个指令集。不同指令集,同样一段高级语言编译出来的二进制代码是不同;就算同一个指令集同一个架构,不同编译器或者同一个编译器不同版本甚至同一个编译器同一个版本不同参数,编译出来的二进制代码都不相同。不同的CPU跑不同的二进制代码,然后你说因为A更快跑完所以A的性能更强?你能肯定不是因为B的编译器问题么?好吧,其实也可以忽略,反正都用这个架构上最优秀的编译器就是了——我们先假设两个平台,针对同一段计算代码都有一个最优秀的编译器。

3、现代CPU的指令集,除了基本的运算指令外,大部分扩展指令都是若干简单指令的组合。目的在于可以在一个指令周期内完成如果用简单指令实现,需要数个甚至数千个时钟周期才能完成的运算。最典型的例子就是浮点数运算、矢量运算等,具体例子就不展开了。那么问题来了,大家的指令集不同,碰到某项工作,A有专门的扩展指令,1秒钟能完成;B没有,需要1分钟才能完成,是不是A的性能就比B的性能强呢?不一定,很有可能对于大家都有对应指令的工作,A的完成时间通常是B的两倍甚至更多。

4、通常我们说的某项计算工作,都是需要多个指令组合的。假设整数指令A的性能强点,浮点指令B的性能强点。那么如果这项工作95%的运算量都是整数指令,显然A的性能更强,另外一项工作95%的运算量都是浮点指令,那么B的性能会更强。如果不是明确某项计算工作指的是什么,那么通常我们会假设若干个场景,然后根据这些场景的常见情况编排出多个操作,看完成这些操作所需的时间——这就是测试软件。但是不同时期,同一场景下这个“常见情况”显然是不同的,例如二十年前还很少有人用电脑上网,就算上网也是简单html+邮件;十年前的互联网javascript的应用还不广泛,Flash几乎一统天下,很少网站用https,很少在线视频;现在的互联网Flash几乎消亡,稍微大一点的网站都用https了,在线视频内容极其丰富。然后很显然,ARM和x86的应用场景明显差距很大,GeekBench的评测结果,其实给予移动平台的权重挺高的。

5、不同的操作系统本身的影响。例如跨平台的测试软件GeekBench,在x86平台上,多核测试性能,Windows平台下的结果和Linux平台下的结果就相差很大:

所以,这种跨平台,跨架构的性能对比,其实真心没有啥意义,也就是YY一下而已。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值