看板 MobileComm 關於我們 聯絡資訊
談到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://www.ptt.cc/bbs/MobileComm/M.1443040937.A.517.html
papo0077 : 好文 09/24 05:16
ckf1207 : 推 09/24 05:27
jademesses : 其實我覺得這篇寫得淺顯易懂阿,蘋果確實在硬體上 09/24 05:37
jademesses : 表現得越來越強,除了RAM是因為iOS特性可以只給1G R 09/24 05:37
jademesses : AM這樣搞,其他像是CPU還有GPU的效能幾乎都不在同 09/24 05:37
jademesses : 級安卓下,甚至在之上 09/24 05:37
iPhone現在都是GPU/CPU很敢給, 但是RAM跟ROM很小器. 這樣的設計, 讓使用者 初期爽, 愛上iPhone, 後期RAM/ROM不夠被迫買新機. 簡單點來說就是擠用戶牙膏.
daney770405 : 淺顯易懂 09/24 05:46
Forestier : 蘋果外加個m處理器就有多核的概念了吧?只是是拆開 09/24 05:54
yihanderman : 只能等阿婆重新定義惹 09/24 06:11
marxOO : 省電的問題是在螢幕吧,Soc的問題在發熱. 09/24 06:38
省電問題, 系統中誰最耗電, 誰就是問題. 當CPU不是很耗電時, 螢幕就首當其衝. 如果CPU因為太大顆而耗電時, 螢幕就來到第二.
marxOO : 要單核強,android已經有intel這個強棒 09/24 06:40
Intel的移動裝置處理器全數都是Atom, 也就是Silvermont架構. Silvermont架構的單核速度差Haswell/Broadwell一大節. 如果Intel有能力把2x Silvermont搭1x Haswell做好, 那保證大殺四方, 不會讓一堆廠商含淚用SD810. 只可惜他沒有. 說好的Intel外星科技呢?
marxOO : android廠商的問題在策略愚蠢,andorid本來參與廠商 09/24 06:43
marxOO : 就夠多了,各自還搞機海,把有限的資源分的那麼散. 09/24 06:48
marxOO : 產業不只是整個發展複製PC進程,連衰落也要嗎 09/24 06:50
kevin930043 : U質好文推 09/24 06:59
Ankuo : GPU本來就強翻了BJ4,但1G ram各種不足,敝公司用的 09/24 07:14
Ankuo : 通訊軟體,iPhone離開畫面跳到別的APP就離線,安卓 09/24 07:14
Ankuo : 就不會,反正現在已經增加了,追求硬體對消費者有利 09/24 07:14
Ankuo : 無害的 09/24 07:14
w147987 : 趕快推一下免得被以為看不懂 09/24 07:14
gtcw : 專業 09/24 07:25
DiChik : 其實Krait/Kyro也是類似的概念,不過Krait單核效能 09/24 07:39
DiChik : 沒那麼強悍,Kyro未知罷了XDD 09/24 07:39
natsugo : 非理工的我也看得懂XD 09/24 07:40
smartcooL : 好文推 09/24 07:52
jansan : 好文 09/24 07:56
jack0805449 : 所以說要打蘋果就是要打它的續航 09/24 08:03
storyo11413 : 寫得還蠻簡單的 看完我覺得系統能更新應該更被重視 09/24 08:05
sumins : 今年安卓的cpu只有三星的較省電mtk高通都很耗電 09/24 08:07
sumins : 蘋果a8也是用20nm沒有mtk高通那樣耗電 09/24 08:11
我上面比較了iPhone 6 (Apple A8, 台積20nm製程)跟 HTC One M8 (高通SD801, 台積28nm HPm製程). 高通製程差一代, 電池比較小, 續航比較強. 可見其CPU耗電上的差異.
wind80053 : 學習推 09/24 08:11
dan123w : 好文用心推 09/24 08:16
DiChik : 電力一大部分會從SoC流掉的... 09/24 08:19
DiChik : SoC如果發熱無解,廢電就會多了一些 09/24 08:20
BIGETC : 810:公司保證我ok der 09/24 08:25
VirgilAeneid: 發熱可以從製程,電源管理,Physical Design來解決. 09/24 08:25
NCISAL : 上了一課 09/24 08:27
newguy : Android第一次的大躍進不是落在2.3? 2.1、2.2都偏向 09/24 08:35
newguy : ? 09/24 08:35
newguy : 無感 09/24 08:35
JIT確實到2.3才比較穩. 就好像現在ART到5.1.1才比較穩. 之前5.0.x的ART GC其實會有問題, 會亂吃記憶體.
snowinwater : 好文 09/24 08:38
Hua0722 : 推推 09/24 08:42
ccpz : Cyclone 效能暴衝的另一個原因是用上 64 bit 09/24 08:43
ccpz : 64bit 不只是記憶體可以超過 4g 這麼單純而已 09/24 08:43
ccpz : 光 register 增加, 減少 swap 次數就可以讓效能提高 09/24 08:44
ccpz : http://bit.ly/WRhAc4 這篇有解釋 09/24 08:48
這篇裡面確實題到了不少移到64-bit以外, A7多出來的新改進. 不過增加Register這件事情, 或許有點爭議, 不過個人認為 在一個Deeply out-of-order pipeline, multi-issue的架構下, register的數量最大的影響應該在instruction encoding efficiency, 而非register spill造成的影響, 因為內部register renaming跟D$ 會減少register數量造成的影響, 讓register spill的效能衝擊更少.
ccpz : 另外除了 Apple 自己開發架構外, 他還有自己養 09/24 08:49
ccpz : LLVM 編譯器的人, 所以 CPU 開發同時, toolchain 09/24 08:50
ccpz : 也跟得上 09/24 08:50
Qoo20811 : 果黑老愛酸蘋果硬體爛卻貴 他們永遠不肯思考蘋果為 09/24 08:54
Qoo20811 : 了讓手機使用者體驗變好 花了多少錢投資在研發上面 09/24 08:54
Qoo20811 : 學過計算機結構都知道自己layout一個cpu有多麻煩 09/24 08:54
Qoo20811 : 1G ram確實已經捉襟見肘 反正等6s出了再換就好惹 09/24 08:56
ealvis : 不要污名化arm標準架構,apple也是arch license來 09/24 09:03
ealvis : 的,不是從0開始。更不要迷信魔改arch,這世界上堪 09/24 09:03
ealvis : 稱成功的也只有apple,上一個魔改的xscale草都不知 09/24 09:04
ealvis : 道多長了。而且arch license的廠商其實也是很多的 09/24 09:04
f50903 : 樓上上說蘋果研發多?看看人家三星好嗎?研發跟行銷 09/24 09:06
f50903 : 都比蘋果砸更多,蘋果本來就是靠著信仰擠牙膏 09/24 09:06
三星在硬體上的研發確實滿認真的. 但是三星的軟體, 根本走錯方向, 管理有誤, 砸再多錢都是枉然. 三星最大的弱點就是軟體. 順便提提HTC, 說真的他軟體跟硬體個人覺得都不差, 只是怎麼回搞到今天的下場, 我也不知道. 也許是管理不佳, 員工沒熱忱吧. 我朋友以前在裡面, 似乎不是很爽.
sokayha : 花大錢研發跟擠牙膏又不衝突XD 一個有投資同時撈更 09/24 09:08
sokayha : 多點回來的概念 09/24 09:08
lsj168 : 果然是……http://i.imgur.com/zbfOcqi.jpg 09/24 09:08
sokayha : 這叫養套殺 小心控制在殺雞取卵寸前 09/24 09:09
NCISAL : 砸更多還這麼爛不需要反省嗎 09/24 09:10
三星的軟體研發需要好好反省, 或是全部砍掉重練. 他的硬體沒啥問題, 只要ARM官板不要那麼智障就好了.
walelile : 有多爛要不要說出來聽聽? 09/24 09:12
natsugo : 感覺是apple的規劃比較謹慎一點不會一次衝太快 09/24 09:12
av012345610 : 原來阿婆對cpu這麼講究 09/24 09:12
walelile : 來一篇S6 Edge vs iPhone 6S ? 09/24 09:13
XiaoMiisCOPY: 三星砸錢多就叫有在研發??? 這種天真的言論也只能在 09/24 09:23
XiaoMiisCOPY: 這邊看到了 原來把錢丟到水裡 跟老闆說我花了很多 09/24 09:23
XiaoMiisCOPY: 錢有在做事 這樣就叫做研發啊 09/24 09:23
三星的SoC其實不錯, 至少砸錢砸了一半對.
XiaoMiisCOPY: 說到行銷砸錢多就更好笑了 砸了人家蘋果+微軟+googl 09/24 09:25
XiaoMiisCOPY: e合起來也比不上的行銷經費 品牌還爛成這樣 還好意 09/24 09:25
XiaoMiisCOPY: 思說自己花比較多錢XDDD 09/24 09:25
Analogue : 蘋果的cpu不是自己lay的… 09/24 09:30
gdtg10900 : 我覺得android問題在無法維持高效能會過熱降頻 09/24 09:33
那是SD810的問題. SD801持久狀況下都沒問題. 高通不會玩大核配小核, 硬要出, 結果搞個四不像.
f50903 : 三星狗又在供銷偉了呵呵,不然你告訴我怎樣評估研發 09/24 09:33
f50903 : 啊?是有人先說蘋果花大錢研發,結果人家三星砸得比 09/24 09:33
f50903 : 他還多,這就是事實啊 09/24 09:33
gdtg10900 : 效能只有跑分的時候會發揮... 09/24 09:34
liwmewmew : 手機的CPU目前都不太會是最耗電的點? 09/24 09:42
liwmewmew : 感覺某些無線模組跟螢幕更是耗電怪獸? 09/24 09:43
如同前面說的, 誰最耗電, 誰就是問題. 用了Cyclone這般大的架構, 他就變成最耗電的點了.
shelizi : 蘋果叫做研發 三星叫做浪費錢 重新定義研發不行嗎 09/24 09:43
jack990568 : 好文! 09/24 09:48
Allen1124 : 推!好文!!! 09/24 09:52
DiChik : 至少我們也知道,當遇到像豬一樣的S810時 09/24 10:04
DiChik : 什麼電源管理,Physical Design都是無用的XDD 09/24 10:04
SD810的電源管理根本智障. 當大核過熱時, 他會跳小核去執行. 這就跟手排車開五檔跑不贏別人, 就直接改換一檔...
DiChik : 製程跟好設計才是關鍵 09/24 10:04
hegemon : 只能奉勸這些AP廠,莫忘AMD只知道堆核心數的教訓… 09/24 10:08
TAIHO : 好文推 09/24 10:11
Skylegend : 這跟以前狀況不同了吧,apple CPU不會拿來給android 09/24 10:12
Skylegend : 用,其實沒什麼好比的,比較像兩個系統的戰爭,以及 09/24 10:12
Skylegend : 各系統廠獲利方式 09/24 10:12
BIGETC : 又出現了 絕對不能形容蘋果不完美 09/24 10:19
jeff101234 : 好文推一個 09/24 10:21
jeff101234 : 阿婆研發再多也是它家的是好嗎 擠牙膏不給你用還要 09/24 10:22
jeff101234 : 為阿婆喝采? 09/24 10:22
racksold : 又有留言又毀了一篇好文 09/24 10:24
cin2 : 原來三星研發叫把錢丟在水裡XDDD 難怪台灣老闆都不 09/24 10:28
cin2 : 花錢研發 就是有這種人XDDD有當老闆的潛質喔三星狗 09/24 10:29
mabao : 有看有推,長知識! 09/24 10:41
derektsai : 好文推 09/24 10:51
ubike5566 : u文給推 09/24 10:56
neil610778 : 三星產業包山包海,從電視到手機,面板、ram、ssd、 09/24 11:00
neil610778 : 晶圓製造等等,產品線那麼多,研發支出高不是很正常 09/24 11:00
neil610778 : 嗎? 09/24 11:00
cin2 : 說不定比台灣全部公司加起來還多XD鬼島的老闆要他們 09/24 11:02
cin2 : 砸錢研發好像要他們的命 09/24 11:03
michaelchen1: 專業 09/24 11:18
BadGame : 蘋果一樣會吃電跟降頻 只是降了還維持一定效能 09/24 11:24
BadGame : 有興趣再看 Apple A8X CPU耗電測試吧 09/24 11:25
BadGame : http://tieba.baidu.com/p/3959432049 09/24 11:25
MisuzuXD : 推 簡單易懂 09/24 11:27
OscarShih : iOS9讓我的ipad Air Lag到死, 我再也不相信apple的 09/24 11:40
OscarShih : 什麼單核神話 09/24 11:40
andrewlol527: 我只知道有人要被桶了 09/24 11:45
ssadd502227 : 果黑有酸蘋果硬體嗎?不是酸信仰嗎? 09/24 11:47
ssadd502227 : 蘋果會賣成這樣已經跟硬不硬體沒直接關係了 09/24 11:48
jeff101234 : 偏激果粉到最後還是會喊銷量屌打 結束這回合 09/24 11:49
DRPL : 果粉被戰到胡言亂語了?? 口憐 XDDD 09/24 11:58
natsugo : 大絕︰放一張XX板結束這個回合 09/24 12:02
westwood0402: 果粉:安卓只會一味地衝硬體 09/24 12:06
notmuchmoney: Intel可能開始感到焦慮了 A9的性能做到跟coreM同級 09/24 12:31
notmuchmoney: 甚至未來高通MRK三星下一代SoC也有同級表現的話 09/24 12:31
notmuchmoney: 很多想像會開始發酵 09/24 12:31
Intel早就開始焦慮了. 就是焦慮才會免費塞一堆CPU給Asus搞Zenfone.
OscarShih : 哪那麼好取代, 頂多是intel攻打table/smphone較難 09/24 12:37
i9602283 : 專業推 09/24 12:43
notmuchmoney: 看看嘍 作業系統都不是掌握在Intel手上 這是Intel 09/24 12:45
notmuchmoney: 比較弱勢的地方 09/24 12:45
ddreamer : 專業文推 09/24 13:27
※ 編輯: john0312 (218.161.1.24), 09/24/2015 14:38:59
johnny790218: 好文推! 09/24 14:14
jimmymd50114: 推 09/24 14:43
kira925 : 這篇該M 09/24 15:25
ASKA028 : 這種文該多ㄧ點 不然都只有看到互酸文 09/24 16:47
rogergon : 以前英特爾的製程有明顯優勢,現在14 vs16 誰怕誰? 09/24 17:45
DiChik : 其實目前真正平衡的ARM SoC,應該2xA72+2xA53就夠了 09/24 17:50
DiChik : 可是這在市場上的宣傳會有不少的問題XD 09/24 17:50
DiChik : S820的Kyro對應的是四顆A72,待機耗電來說 09/24 17:51
DiChik : 就算降頻..還是不及A53 09/24 17:51
DiChik : 至於Cyclone架構..核心對應是比A72還強的效能核心 09/24 17:56
DiChik : 在"同樣環境"下,待機耗電絕對沒優勢 09/24 17:56
DiChik : 只可惜,系統上iOS的取向跟電量管理 09/24 17:56
DiChik : "省電"倒是比Android還好 XD 09/24 17:56
seafire : 需要更多這種文章 09/24 18:09
seafire : 另外新手問一下 那為何蘋果用起來感覺很省電? 09/24 18:09
kira925 : Intel現在製程依然有優勢阿.... 09/24 18:10
kira925 : 因為是"感覺" 09/24 18:10
treble720 : 推 09/24 18:14
DiChik : iOS整體來說不是感覺很省電,事實是真的比較省電 09/24 18:24
DiChik : 軟體架構上一個全多工,一個則是偽多工,或稱單工 09/24 18:24
DiChik : 自然在一個單位裡較省,只是在電量上一直給的很小氣 09/24 18:24
DiChik : 另外就是Android有太多不必要的耗電來源 09/24 18:24
DiChik : 例如無用的常駐Service,軟體最佳化問題 09/24 18:24
DiChik : 不過iOS9已經開始開拓"雙工"的部份 09/24 18:25
DiChik : 算是好事也是壞事XD 09/24 18:25
Anthonypapa : 難道有長知識好文,拜託不要又戰起來 09/24 19:20
jeff6165 : Intel外星科技的代價就是噴電啊...我相信沒人會想 09/24 19:29
jeff6165 : 掛一顆尿袋趴趴走 09/24 19:29
DiChik : x86這架構嘛 本來就是不管耗電的.... 09/24 19:33
DiChik : 所以Atom一開始才非常委靡不振啊XD 廠商不敢用 09/24 19:34
bjiyxo : 推專業 09/24 20:54
karta0681608: 推 09/25 10:08
running9977 : 好文不推不行! 09/26 04:11
needhp : 推 09/26 10:05
geoffrey2012: 好文推 09/28 01:35