作者john0312 (Chen John L)
看板MobileComm
标题Re: [新闻] iPhone 6s 玫瑰金开箱!第一件事先测跑分
时间Thu Sep 24 04:42:13 2015
谈到CPU, 我觉得苹果跟Android阵营双方在这领域的发展还满有趣的.
文长慎入. 本篇技术含量高, 细节懒的看可以看上色的部份.
---
苹果其实在CPU方面算是深耕多时, 而且赌很大.
: 这款手机搭载的 Apple A9 处理器,单核心跑分为 2413、多核心跑分为 4795。
: 先前韩国媒体报导的 Snapdragon 820 处理器单核心跑分为 1732、多核心跑分 4970。
苹果在单核效能方面其实已经领先一段时间了,
从A7系列开始, 就是
单核苹果强,
多核Android强.
这次A9处理器的出现在这方面没有改变太多,
单核持续领先, 多核差距大幅缩小, 甚至追平.
苹果的单核效能领先其实不是偶然, 这是因为苹果
意识到
大多软体其实依然是吃单核效能. 这点在iOS
跟Android上基本上来说都是正确的.
所以说, A7算是一个转捩点, A7以前, iPhone顺
单纯是因为对手Android还不够成熟(所以Android还
没上KitKat的赶快上, 能刷的不要等). A7以後,
同期的Android KitKat优化也不差, 所以
iPhone界面
顺畅的主因是强大的单核效能, 而非广为流传的
"软体优化". 当然不否认iOS软体有优化, 但这与现代
的Android差异已经不多, 所以不是主因.
看到这里, 相信你会问:
1.
为什麽高通/MTK/三星不发展单核强的SoC而专注
在多核效能?
2.
苹果怎麽做到大幅提昇单核效能的? 这样做, Z>B吗?
问题一的答案有两部份:
1.
Android 5.0以前的Dalvik系统需要多一个核心来进行JIT
Compile.
相信早期的Android玩家应该都记得Android 2.2 Froyo所带
来效能大跃进, 当时的效能提昇, 来自JIT Compile, 他能够
在程式执行时, 将Dalvik/Java的程式码, 转成CPU原生的
程式码. 原生的程式码当然快的多. 然而, 他是程式一边跑,
他一边转, 所以程式跑在一个核心, 转换的工作(Compile)
在另一个核心跑. 因此多核心是真的会被用到. 这也就是为什麽
在Froyo的出现(05/2010)後, 多核心的手机(LG Optimus 2X,
12/2010)就迅速的出现.
那讲到这边, 跟Android 5.0有什麽关系? Android 5.0出现了
ART. ART能够在软体安装的时候, 就将Dalvik/Java的程式码
转换成原生的程式码,
避免每次执行, 每次转换还需要多一个
核心的问题. 因此5.0後Android对多核心的需求会下降.
也就是说,
未来Android系统的CPU也会走向高单核效能的方向.
当然, 最近MTK要出Helios X20, 一次来个10核心, 这看似
有些反常, 不过别忘了, 他是分成3个群组, 4+4+2, 所以真正
跑分时, 他根本就是双核心, 只有两个A72核心在跑. 剩下
八颗A53, 都是废物, 应该废除... 阿不是, 其实A53的小核心
有其待机时的低耗电优势, 但是不用到八颗那麽夸张, 放那麽
多颗我怀疑是行销噱头用, 如同当年Pentium 4那超高却没用的
时脉.
因次我建议,
消费者们必须要让厂商了解, 核心数量已经不被
在乎, 少去关心核心数量. 真正在乎的是单核效能, 跟少数
(<=2~4)核心状况下的多核分数. 让他们少浪费钱跟时间出
那麽多颗A53这种little核心.
2.
大多SoC厂没能力自行开发CPU, 全部都用ARM的公板来优化.
目前MTK, 三星, 跟大陆的海思所用的晶片全数都是ARM的
公板. 然而,
当时ARM就没有这样一个高单核效能的核心, 他们
当然没有办法出这样的一个产品. 另外,
ARM的CPU设计功力也不
是那麽的杰出, 当年Cortex A15时期, ARM的公板Cortex A15被
高通设计的Krait架构给打败. 来到ARMv8时期, Cortex A53/57
又被苹果的Cyclone架构打败.
当然, 近期有两个变化. ARM推出了Cortex A72核心, 他的单核
效能有不少的成长, 但ARM在优化这颗核心时, 似乎还是很顾虑
面积, 所以个人预估, 单核效能要追平Apple A9可能有困难.
另外, 不只高通要出自己的核心(Kryo), 最近三星似乎也发现有
必要研发自己的CPU架构(Mongoose).
另外第二个问题, 苹果冲单核效能怎麽做到的, 并且有没有副作用?
1.
苹果单核效能的来源是把桌机的CPU架构搬来手机上用.
苹果从A7开始用了他们自己开发的Cyclone架构, 当初5s发表时,
苹果就说他们用了桌机等级(Desktop Class)的CPU, Cyclone架构
细节流出来後, 确实它比其他ARM核心大且复杂的多, 架构也跟Intel
的Haswell架构比较相似.
关於Apple Cyclone的CPU架构国外网站Anandtech有满详尽的介绍,
不过似乎台湾没有媒体把发翻成中文, 所以有兴趣的只能看英文吧.
http://www.anandtech.com/show/7910/apples-cyclone-microarchitecture-detailed
短网址:
http://goo.gl/OycHpr
2.
大核心的副作用: 续航力
大颗的CPU核心, 例如Apple Cyclone或是Intel Haswell, 都有
一个问题, 他们的耗电量大. 为了解决这个问题, 苹果用了一个
策略, 用较快的CPU, 迅速将事情做完, 然後迅速关掉CPU来省电.
但这方法也是有缺陷的, 较大的CPU要完全关闭需要较长的时间,
如果不完全关闭, 轻度休眠(例如关CPU不Flush Cache), 耗电量
就会比较大.
这个问题依然解的不完全, 连Intel也在想办法. 所以说,
苹果使用
桌机等级的CPU架构最大的赌注, 就是续航力.
续航力这点, 其实可以从国外各大网站的测试中看到. PhoneArena
所进行的测试中, 同样的电池大小(mAh数), iPhone的续航力大多
时候会输Android. (除非你用了SD810, SD810不要买)
例如:
Galaxy S6 iPhone 6+ HTC One M8
电池容量 2550mAh 2915mAh 2600mAh
PhoneArena续航评监 7时14分 6时32分 7时12分
所以简单一点来说,
苹果拿续航力换来了高单核效能跟界面流畅度.
iPhone上任何用CPU动作都会带来不少续航力的损耗.
如果苹果要解决这个问题, 长远来看还是要往类似ARM那样的
BIG.little架构, 大核心配小核心. 不过这方面有些许难度,
因此离苹果重新定义BIG.little架构, 应该还有些时日.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 218.161.1.24
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MobileComm/M.1443040937.A.517.html
1F:推 papo0077 : 好文 09/24 05:16
2F:推 ckf1207 : 推 09/24 05:27
3F:推 jademesses : 其实我觉得这篇写得浅显易懂阿,苹果确实在硬体上 09/24 05:37
4F:→ jademesses : 表现得越来越强,除了RAM是因为iOS特性可以只给1G R 09/24 05:37
5F:→ jademesses : AM这样搞,其他像是CPU还有GPU的效能几乎都不在同 09/24 05:37
6F:→ jademesses : 级安卓下,甚至在之上 09/24 05:37
iPhone现在都是GPU/CPU很敢给,
但是RAM跟ROM很小器. 这样的设计, 让使用者
初期爽, 爱上iPhone, 後期RAM/ROM不够被迫买新机.
简单点来说就是挤用户牙膏.
7F:推 daney770405 : 浅显易懂 09/24 05:46
8F:推 Forestier : 苹果外加个m处理器就有多核的概念了吧?只是是拆开 09/24 05:54
9F:推 yihanderman : 只能等阿婆重新定义惹 09/24 06:11
10F:→ marxOO : 省电的问题是在萤幕吧,Soc的问题在发热. 09/24 06:38
省电问题, 系统中谁最耗电, 谁就是问题.
当CPU不是很耗电时, 萤幕就首当其冲.
如果CPU因为太大颗而耗电时, 萤幕就来到第二.
11F:→ marxOO : 要单核强,android已经有intel这个强棒 09/24 06:40
Intel的移动装置处理器全数都是Atom,
也就是Silvermont架构.
Silvermont架构的单核速度差Haswell/Broadwell一大节.
如果Intel有能力把2x Silvermont搭1x Haswell做好,
那保证大杀四方, 不会让一堆厂商含泪用SD810.
只可惜他没有. 说好的Intel外星科技呢?
12F:→ marxOO : android厂商的问题在策略愚蠢,andorid本来参与厂商 09/24 06:43
13F:→ marxOO : 就够多了,各自还搞机海,把有限的资源分的那麽散. 09/24 06:48
14F:→ marxOO : 产业不只是整个发展复制PC进程,连衰落也要吗 09/24 06:50
15F:推 kevin930043 : U质好文推 09/24 06:59
16F:→ Ankuo : GPU本来就强翻了BJ4,但1G ram各种不足,敝公司用的 09/24 07:14
17F:→ Ankuo : 通讯软体,iPhone离开画面跳到别的APP就离线,安卓 09/24 07:14
18F:→ Ankuo : 就不会,反正现在已经增加了,追求硬体对消费者有利 09/24 07:14
19F:→ Ankuo : 无害的 09/24 07:14
20F:推 w147987 : 赶快推一下免得被以为看不懂 09/24 07:14
21F:推 gtcw : 专业 09/24 07:25
22F:→ DiChik : 其实Krait/Kyro也是类似的概念,不过Krait单核效能 09/24 07:39
23F:→ DiChik : 没那麽强悍,Kyro未知罢了XDD 09/24 07:39
24F:推 natsugo : 非理工的我也看得懂XD 09/24 07:40
25F:推 smartcooL : 好文推 09/24 07:52
26F:推 jansan : 好文 09/24 07:56
27F:推 jack0805449 : 所以说要打苹果就是要打它的续航 09/24 08:03
28F:推 storyo11413 : 写得还蛮简单的 看完我觉得系统能更新应该更被重视 09/24 08:05
29F:推 sumins : 今年安卓的cpu只有三星的较省电mtk高通都很耗电 09/24 08:07
30F:→ sumins : 苹果a8也是用20nm没有mtk高通那样耗电 09/24 08:11
我上面比较了iPhone 6 (Apple A8, 台积20nm制程)跟
HTC One M8 (高通SD801, 台积28nm HPm制程).
高通制程差一代, 电池比较小, 续航比较强.
可见其CPU耗电上的差异.
31F:推 wind80053 : 学习推 09/24 08:11
32F:推 dan123w : 好文用心推 09/24 08:16
33F:→ DiChik : 电力一大部分会从SoC流掉的... 09/24 08:19
34F:→ DiChik : SoC如果发热无解,废电就会多了一些 09/24 08:20
35F:推 BIGETC : 810:公司保证我ok der 09/24 08:25
36F:推 VirgilAeneid: 发热可以从制程,电源管理,Physical Design来解决. 09/24 08:25
37F:推 NCISAL : 上了一课 09/24 08:27
38F:推 newguy : Android第一次的大跃进不是落在2.3? 2.1、2.2都偏向 09/24 08:35
39F:→ newguy : ? 09/24 08:35
40F:→ newguy : 无感 09/24 08:35
JIT确实到2.3才比较稳.
就好像现在ART到5.1.1才比较稳. 之前5.0.x的ART GC其实会有问题,
会乱吃记忆体.
41F:推 snowinwater : 好文 09/24 08:38
42F:推 Hua0722 : 推推 09/24 08:42
43F:推 ccpz : Cyclone 效能暴冲的另一个原因是用上 64 bit 09/24 08:43
44F:→ ccpz : 64bit 不只是记忆体可以超过 4g 这麽单纯而已 09/24 08:43
45F:→ ccpz : 光 register 增加, 减少 swap 次数就可以让效能提高 09/24 08:44
这篇里面确实题到了不少移到64-bit以外,
A7多出来的新改进.
不过增加Register这件事情, 或许有点争议, 不过个人认为
在一个Deeply out-of-order pipeline, multi-issue的架构下,
register的数量最大的影响应该在instruction encoding efficiency,
而非register spill造成的影响, 因为内部register renaming跟D$
会减少register数量造成的影响, 让register spill的效能冲击更少.
47F:→ ccpz : 另外除了 Apple 自己开发架构外, 他还有自己养 09/24 08:49
48F:→ ccpz : LLVM 编译器的人, 所以 CPU 开发同时, toolchain 09/24 08:50
49F:→ ccpz : 也跟得上 09/24 08:50
50F:推 Qoo20811 : 果黑老爱酸苹果硬体烂却贵 他们永远不肯思考苹果为 09/24 08:54
51F:→ Qoo20811 : 了让手机使用者体验变好 花了多少钱投资在研发上面 09/24 08:54
52F:→ Qoo20811 : 学过计算机结构都知道自己layout一个cpu有多麻烦 09/24 08:54
53F:→ Qoo20811 : 1G ram确实已经捉襟见肘 反正等6s出了再换就好惹 09/24 08:56
54F:→ ealvis : 不要污名化arm标准架构,apple也是arch license来 09/24 09:03
55F:→ ealvis : 的,不是从0开始。更不要迷信魔改arch,这世界上堪 09/24 09:03
56F:→ ealvis : 称成功的也只有apple,上一个魔改的xscale草都不知 09/24 09:04
57F:→ ealvis : 道多长了。而且arch license的厂商其实也是很多的 09/24 09:04
58F:推 f50903 : 楼上上说苹果研发多?看看人家三星好吗?研发跟行销 09/24 09:06
59F:→ f50903 : 都比苹果砸更多,苹果本来就是靠着信仰挤牙膏 09/24 09:06
三星在硬体上的研发确实满认真的. 但是三星的软体,
根本走错方向, 管理有误, 砸再多钱都是枉然.
三星最大的弱点就是软体.
顺便提提HTC, 说真的他软体跟硬体个人觉得都不差,
只是怎麽回搞到今天的下场, 我也不知道.
也许是管理不佳, 员工没热忱吧. 我朋友以前在里面,
似乎不是很爽.
60F:推 sokayha : 花大钱研发跟挤牙膏又不冲突XD 一个有投资同时捞更 09/24 09:08
61F:→ sokayha : 多点回来的概念 09/24 09:08
63F:→ sokayha : 这叫养套杀 小心控制在杀鸡取卵寸前 09/24 09:09
64F:→ NCISAL : 砸更多还这麽烂不需要反省吗 09/24 09:10
三星的软体研发需要好好反省, 或是全部砍掉重练.
他的硬体没啥问题, 只要ARM官板不要那麽智障就好了.
65F:→ walelile : 有多烂要不要说出来听听? 09/24 09:12
66F:推 natsugo : 感觉是apple的规划比较谨慎一点不会一次冲太快 09/24 09:12
67F:推 av012345610 : 原来阿婆对cpu这麽讲究 09/24 09:12
68F:→ walelile : 来一篇S6 Edge vs iPhone 6S ? 09/24 09:13
69F:推 XiaoMiisCOPY: 三星砸钱多就叫有在研发??? 这种天真的言论也只能在 09/24 09:23
70F:→ XiaoMiisCOPY: 这边看到了 原来把钱丢到水里 跟老板说我花了很多 09/24 09:23
71F:→ XiaoMiisCOPY: 钱有在做事 这样就叫做研发啊 09/24 09:23
三星的SoC其实不错, 至少砸钱砸了一半对.
72F:推 XiaoMiisCOPY: 说到行销砸钱多就更好笑了 砸了人家苹果+微软+googl 09/24 09:25
73F:→ XiaoMiisCOPY: e合起来也比不上的行销经费 品牌还烂成这样 还好意 09/24 09:25
74F:→ XiaoMiisCOPY: 思说自己花比较多钱XDDD 09/24 09:25
75F:→ Analogue : 苹果的cpu不是自己lay的… 09/24 09:30
76F:→ gdtg10900 : 我觉得android问题在无法维持高效能会过热降频 09/24 09:33
那是SD810的问题. SD801持久状况下都没问题.
高通不会玩大核配小核, 硬要出, 结果搞个四不像.
77F:→ f50903 : 三星狗又在供销伟了呵呵,不然你告诉我怎样评估研发 09/24 09:33
78F:→ f50903 : 啊?是有人先说苹果花大钱研发,结果人家三星砸得比 09/24 09:33
79F:→ f50903 : 他还多,这就是事实啊 09/24 09:33
80F:→ gdtg10900 : 效能只有跑分的时候会发挥... 09/24 09:34
81F:推 liwmewmew : 手机的CPU目前都不太会是最耗电的点? 09/24 09:42
82F:→ liwmewmew : 感觉某些无线模组跟萤幕更是耗电怪兽? 09/24 09:43
如同前面说的, 谁最耗电, 谁就是问题.
用了Cyclone这般大的架构, 他就变成最耗电的点了.
83F:推 shelizi : 苹果叫做研发 三星叫做浪费钱 重新定义研发不行吗 09/24 09:43
84F:推 jack990568 : 好文! 09/24 09:48
85F:推 Allen1124 : 推!好文!!! 09/24 09:52
86F:→ DiChik : 至少我们也知道,当遇到像猪一样的S810时 09/24 10:04
87F:→ DiChik : 什麽电源管理,Physical Design都是无用的XDD 09/24 10:04
SD810的电源管理根本智障. 当大核过热时,
他会跳小核去执行.
这就跟手排车开五档跑不赢别人, 就直接改换一档...
88F:→ DiChik : 制程跟好设计才是关键 09/24 10:04
89F:推 hegemon : 只能奉劝这些AP厂,莫忘AMD只知道堆核心数的教训… 09/24 10:08
90F:推 TAIHO : 好文推 09/24 10:11
91F:→ Skylegend : 这跟以前状况不同了吧,apple CPU不会拿来给android 09/24 10:12
92F:→ Skylegend : 用,其实没什麽好比的,比较像两个系统的战争,以及 09/24 10:12
93F:→ Skylegend : 各系统厂获利方式 09/24 10:12
94F:→ BIGETC : 又出现了 绝对不能形容苹果不完美 09/24 10:19
95F:推 jeff101234 : 好文推一个 09/24 10:21
96F:→ jeff101234 : 阿婆研发再多也是它家的是好吗 挤牙膏不给你用还要 09/24 10:22
97F:→ jeff101234 : 为阿婆喝采? 09/24 10:22
98F:推 racksold : 又有留言又毁了一篇好文 09/24 10:24
99F:推 cin2 : 原来三星研发叫把钱丢在水里XDDD 难怪台湾老板都不 09/24 10:28
100F:→ cin2 : 花钱研发 就是有这种人XDDD有当老板的潜质喔三星狗 09/24 10:29
101F:推 mabao : 有看有推,长知识! 09/24 10:41
102F:推 derektsai : 好文推 09/24 10:51
103F:推 ubike5566 : u文给推 09/24 10:56
104F:→ neil610778 : 三星产业包山包海,从电视到手机,面板、ram、ssd、 09/24 11:00
105F:→ neil610778 : 晶圆制造等等,产品线那麽多,研发支出高不是很正常 09/24 11:00
106F:→ neil610778 : 吗? 09/24 11:00
107F:→ cin2 : 说不定比台湾全部公司加起来还多XD鬼岛的老板要他们 09/24 11:02
108F:→ cin2 : 砸钱研发好像要他们的命 09/24 11:03
109F:推 michaelchen1: 专业 09/24 11:18
110F:→ BadGame : 苹果一样会吃电跟降频 只是降了还维持一定效能 09/24 11:24
111F:→ BadGame : 有兴趣再看 Apple A8X CPU耗电测试吧 09/24 11:25
113F:推 MisuzuXD : 推 简单易懂 09/24 11:27
114F:→ OscarShih : iOS9让我的ipad Air Lag到死, 我再也不相信apple的 09/24 11:40
115F:→ OscarShih : 什麽单核神话 09/24 11:40
116F:推 andrewlol527: 我只知道有人要被桶了 09/24 11:45
117F:推 ssadd502227 : 果黑有酸苹果硬体吗?不是酸信仰吗? 09/24 11:47
118F:→ ssadd502227 : 苹果会卖成这样已经跟硬不硬体没直接关系了 09/24 11:48
119F:→ jeff101234 : 偏激果粉到最後还是会喊销量屌打 结束这回合 09/24 11:49
120F:推 DRPL : 果粉被战到胡言乱语了?? 口怜 XDDD 09/24 11:58
121F:推 natsugo : 大绝︰放一张XX板结束这个回合 09/24 12:02
122F:推 westwood0402: 果粉:安卓只会一味地冲硬体 09/24 12:06
123F:推 notmuchmoney: Intel可能开始感到焦虑了 A9的性能做到跟coreM同级 09/24 12:31
124F:→ notmuchmoney: 甚至未来高通MRK三星下一代SoC也有同级表现的话 09/24 12:31
125F:→ notmuchmoney: 很多想像会开始发酵 09/24 12:31
Intel早就开始焦虑了.
就是焦虑才会免费塞一堆CPU给Asus搞Zenfone.
126F:→ OscarShih : 哪那麽好取代, 顶多是intel攻打table/smphone较难 09/24 12:37
127F:推 i9602283 : 专业推 09/24 12:43
128F:推 notmuchmoney: 看看喽 作业系统都不是掌握在Intel手上 这是Intel 09/24 12:45
129F:→ notmuchmoney: 比较弱势的地方 09/24 12:45
130F:推 ddreamer : 专业文推 09/24 13:27
※ 编辑: john0312 (218.161.1.24), 09/24/2015 14:38:59
131F:推 johnny790218: 好文推! 09/24 14:14
132F:推 jimmymd50114: 推 09/24 14:43
133F:推 kira925 : 这篇该M 09/24 15:25
134F:推 ASKA028 : 这种文该多ㄧ点 不然都只有看到互酸文 09/24 16:47
135F:推 rogergon : 以前英特尔的制程有明显优势,现在14 vs16 谁怕谁? 09/24 17:45
136F:→ DiChik : 其实目前真正平衡的ARM SoC,应该2xA72+2xA53就够了 09/24 17:50
137F:→ DiChik : 可是这在市场上的宣传会有不少的问题XD 09/24 17:50
138F:→ DiChik : S820的Kyro对应的是四颗A72,待机耗电来说 09/24 17:51
139F:→ DiChik : 就算降频..还是不及A53 09/24 17:51
140F:→ DiChik : 至於Cyclone架构..核心对应是比A72还强的效能核心 09/24 17:56
141F:→ DiChik : 在"同样环境"下,待机耗电绝对没优势 09/24 17:56
142F:→ DiChik : 只可惜,系统上iOS的取向跟电量管理 09/24 17:56
143F:→ DiChik : "省电"倒是比Android还好 XD 09/24 17:56
144F:推 seafire : 需要更多这种文章 09/24 18:09
145F:→ seafire : 另外新手问一下 那为何苹果用起来感觉很省电? 09/24 18:09
146F:推 kira925 : Intel现在制程依然有优势阿.... 09/24 18:10
147F:→ kira925 : 因为是"感觉" 09/24 18:10
148F:推 treble720 : 推 09/24 18:14
149F:→ DiChik : iOS整体来说不是感觉很省电,事实是真的比较省电 09/24 18:24
150F:→ DiChik : 软体架构上一个全多工,一个则是伪多工,或称单工 09/24 18:24
151F:→ DiChik : 自然在一个单位里较省,只是在电量上一直给的很小气 09/24 18:24
152F:→ DiChik : 另外就是Android有太多不必要的耗电来源 09/24 18:24
153F:→ DiChik : 例如无用的常驻Service,软体最佳化问题 09/24 18:24
154F:→ DiChik : 不过iOS9已经开始开拓"双工"的部份 09/24 18:25
155F:→ DiChik : 算是好事也是坏事XD 09/24 18:25
156F:推 Anthonypapa : 难道有长知识好文,拜托不要又战起来 09/24 19:20
157F:推 jeff6165 : Intel外星科技的代价就是喷电啊...我相信没人会想 09/24 19:29
158F:→ jeff6165 : 挂一颗尿袋趴趴走 09/24 19:29
159F:→ DiChik : x86这架构嘛 本来就是不管耗电的.... 09/24 19:33
160F:→ DiChik : 所以Atom一开始才非常委靡不振啊XD 厂商不敢用 09/24 19:34
161F:推 bjiyxo : 推专业 09/24 20:54
162F:推 karta0681608: 推 09/25 10:08
163F:推 running9977 : 好文不推不行! 09/26 04:11
164F:推 needhp : 推 09/26 10:05
165F:推 geoffrey2012: 好文推 09/28 01:35