蘋果A7處理器是怎樣用雙核擊敗八核的

隨着蘋果在iPhone 5s上祭出「業界首枚64bit手機處理器」,果粉們彷佛找到了新一輪嘲諷Android的武器:Anandtech等權威媒體測試代表,運行頻率僅 1.3GHz的雙核A7處理器,性能堪比安卓手機中的四核Cortex A15處理器。「Android就知道拼硬件,四核八核作出來,還不如我家蘋果雙核快,丟臉不丟臉?」 多線程

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的

實測:雙核秒殺四核/八核 架構

好吧嚴肅一點,讓咱們先把得意洋洋的果粉放到一邊。事實上A7處理器「以雙核戰翻四核」這個近乎於神話的結果原本也頗有趣,這是不是蘋果遠遠拋開業 界設計水平的佐證呢?要知道在現在的處理器設計中,在一樣的功耗前提下即使是差距大如英特爾 vs ARM,也幾乎不可能作到一個核心對抗對方兩個核心,更別說是ARM陣營的內部鬥爭了。 ide

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的
A7處理器兼容下一代ARMv8 64bit指令集,核心架構由蘋果自行設計 性能

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的
跑谷歌Octance Java這種單線程性能需求強勁的代碼,iPhone 5s把幾乎全部安卓手機都轟成了渣 測試

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的
運行Sunspider Javascript測試程序時也得到了相似結果,GS4大概只有iPhone 5s一半的性能 優化

誠然,Apple A7是一枚設計優秀64bit的處理器,64bit帶來的額外寄存器資源若是優化得當,應用程序可得到近乎翻倍的性能提高,但即便在現有的32位環境中,iPhone 5s表現依然搶眼,蘋果是如何作到這點的? 加密

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的
應用程序64位化以後,每每會帶來一些難以想象的性能提高,圖中iPhone 5s運行64位AES加密時性能較32位提高了825% spa

要解答這個問題,咱們必須梳理一個思惟盲區:直到如今,惟性能論者的潛意識裏,各家廠商的處理器核心都是差很少的,所以超過一倍的性能差距每每會讓人以爲難以想象。但問題是:不一樣處理器的核心架構真的差很少嗎?或者咱們換個問法:熊的力氣超過人類兩倍,這有什麼奇怪的嗎? 線程

誰的功勞? 設計

以拆機聞名的Chipworks日前公佈了A7處理器的核心分析圖,這個問題總算獲得了明確的答案。因爲A7採用的是三星28nm HKMG LP工藝,爲了更好的對比,咱們找來三星自家的Exynos 5410,兩枚處理器的核心X射線透視圖以下:

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的

顯而易見,蘋果A7的CPU雖然是雙核設計,可是它消耗掉的芯片面積(或者說晶體管數量)與四核Cortex A15幾乎相等。考慮到核心數量的設計只是邏輯層面的差別,半導體芯片運算能力的本質來源依然仍是晶體管數,這也就意味着,蘋果A7最終表現出與四核心 Cortex A15等同的性能是應該的,而不是難以想象的。

蘋果A7處理器單個核心的面積就接近兩個標準的ARM Cortex A15處理核心,所以A7的單線程性能比Cortex A15強徹底正常。同時,因爲邏輯核心只有兩個,A7的多線程性能比四個Cortex A15弱也是情理之中。

整體來看,Apple A7的設計對於晶體管的利用率反而低於Cortex A15,綜合單線程和多線程的性能,A7在使用了相同晶體管的前提下並無實現同等的性能,固然這也是正常的,大而少的設計自己就存在難以免的浪費。

設計思路的差別

實際上,蘋果A7處理器選擇的是消耗Cortex A15兩倍的資源,去實現一個單線程好於Cortex A15 50%-70%的設計。這樣的選擇是基於IOS系統的須要——iOS是一個對於後臺任務限制很嚴格的系統,同時也是一個高度私有化、高度優化的封閉體系,在這樣的體系裏蘋果認爲單線程性能更加劇要一些,所以做出了這樣的選擇。

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的

而Android是一個容許後臺程序隨意執行和切換的開放系統,在這樣的系統下對於並行度的需求要明顯高過IOS,因此Android走上了多核心 之路,而IOS堅持大核心戰略。這樣不一樣的需求決定了不一樣的設計風格,天然也致使了在不一樣的測試條件下擁有不同的表現,而這一切本質上都是正常的:在相 同的半導體工藝環境下,沒有任何人用更少的代價實現了更多的性能,這一切只是取捨

【新技研】蘋果A7處理器是怎樣用雙核擊敗八核的

那麼,誰的設計更先進,或者說表明了誰的思路更正確?要回答這個問題,你能夠假想本身是一個建築設計師。你手頭有100噸混凝土,你是用它去造兩間80平米的大客廳,仍是用它去造10個20平米的小居室?答案固然是「取決於要求」。

若是是土豪拿來當家庭影院,顯然你要把房間造得大一點;若是你要將房子出租給大學生,房間天然是小一些、多一些爲妙。嗯,如今我是甲方,我命令你在這兩個設計中選擇一個更「高級」,更「先進」,或者更「正確」的進行設計,你的答案是啥?
相關文章
相關標籤/搜索