嚴格地來說,高通驍龍和蘋果A系列芯片采用的是ARM的架構/指令集層級授權,而並非簡單地使用了ARM的IP核心。
這個級別的授權可以對ARM架構進行大幅度改造,甚至可以對ARM指令集進行擴展或縮減,蘋果就是壹個很好的例子,在使用ARMv7-A架構基礎上,擴展出了自己的蘋果swift架構。
那既然都是架構/指令集層級授權,為什麽高通驍龍和蘋果A系列芯片的性能差異那麽大?
其實單純從跑分的角度來看,驍龍的多核性能和A系列芯片不相上下。但蘋果采用的了“少核心,多性能”的策略,不計成本地增大核心面積和效率,用來換取功耗和性能。
不僅如此,蘋果設計的芯片在流水線效率、通道、帶寬和L2/L3上從不吝嗇,目的就是為了把單核的性能提高。
這樣的設計對於日常應用和 遊戲 來說很占優勢,因為這些場景下CPU更多的是單核(或雙核)工作。
另外壹個讓我們覺得A系列芯片性能更好的原因是iOS對於蘋果芯片的優化,正是因為蘋果不僅有自研芯片的能力,更是在操作系統上形成了閉環,使得iOS配+蘋果芯片的體驗要超過安卓+高通芯片。
從底層壹點的技術上來看,由於安卓采用的Java虛擬機導致了安卓系統對資源的占用要比蘋果iOS要多,壹直以來就使得安卓手機在體驗上沒有蘋果手機流暢。
不過這兩年隨著芯片性能和內存容量的不斷提高,安卓手機的體驗已經越來越接近蘋果手機。而驍龍的GPU性能要比A系列芯片更勝壹籌,所以兩者的差距事實上並沒有想象中的那麽巨大。
題主的問題實際上是壹個偽問題。
單從處理器角度而言,高通的高端處理器(8XX系列)和蘋果A系列處理器綜合比較,性能差不多。
下面是我在網上找的驍龍835和A10的性能評測數據
在單核性能方面蘋果占優 ,主要是因為蘋果A10單核面積要比驍龍大,集成的晶體管數量占優。
蘋果A10是四核心,驍龍是8核心(最新的蘋果A11是六核心)。在多核性能對比中, 驍龍占優 。實際上,我們應用程序大部分場景下都是單核運行,所以蘋果的A10在用戶實際體驗中還是占優的。
GPU部分驍龍占優。
綜合比較而言,驍龍還稍稍有點優勢。
但為什麽,我們實際體驗中,蘋果手機比安卓手機要明顯流暢呢?這其實和操作系統架構有很大關系。
谷歌的Android系統,是以linux為核心,在此基礎上增加了Java虛擬機,所有的應用實際上是在這個虛擬機上運行的。這保證了應用程序的跨平臺性。同時使用JAVA語言作為開發語言的程序員是全球數量最多的。谷歌也充分利用了這部分資源,使Android平臺迅速聚集了最多開發者為其開發應用。
問題也就出在這個Java虛擬機,了解java虛擬機的朋友們都知道。虛擬機的好處是,程序員在開發程序的過程中,程序員不必關心內存資源回收的問題,虛擬機的內存回收機制會幫妳處理這些問題,這樣極大的減輕了程序員的開發負擔。但缺點也同時存在,那就是虛擬機再運行過程中,占用系統資源很大。
這也就是為什麽安卓旗艦手機內存比蘋果手機內存大,但運行效果遠不如蘋果手機的主要原因。
蘋果IOS系統是在其私有的UNIX基礎上演變過來的,它不存在虛擬機機制,同時ios是壹個閉源系統,蘋果對其硬件和ios系統做了大量的優化和適配。保證了IOS應用高效的運行。而Android系統是壹個開源系統,系統版本碎片化,導致硬件和軟件都有很多兼容性問題,最終使得運行效率降低。
所以,典型的以三星為代表,就用堆硬件來解決android的運行效率問題。
長此以往,使人們認為,安卓手機性能不如蘋果手機,進而認為高通不如蘋果A處理器。
對了,多說壹下,蘋果IOS系統響應優先級中,屏幕響應為最高級別。這也是人們認為蘋果運行快的壹個原因。
題主說的沒錯,高通驍龍系列芯片和蘋果A系列芯片都是用的ARM的指令集,但由於設計思路的不同,兩者的CPU性能有著天壤之別。
我們知道,蘋果是第壹個用上64位處理器的手機廠商,為了發掘最強大的性能,蘋果把自己的CPU做的非常強悍。於是,在當年令人無法想象的A7處理器就誕生了。
A7 Cyclone是壹個很寬的架構,每個時鐘周期最多可以同時解碼、發射、執行、收回6個指令/微操作,作為比較,上壹代的A6 Swift則最多不超過3個。另壹方面,A7的重排序緩沖達到了驚人的192,是上代的四倍多,同時巧合的是正好與Intel Haswell架構壹樣。分支預測錯誤懲罰也增加了,但幅度不大,而且又正好與Intel Sandy Bridge及其後的架構在同樣範圍內。也就是說,A7的規模幾乎已經能和桌面版的core處理器相比較了。
這種情況下,A7展現出了巨大的單核性能提升,高通方面直到驍龍652處理器發布才能夠與之相比。
高通驍龍處理器壹直以來都是魔改ARM公版架構,公版架構的規模相當小,同主頻的時候公版架構性能只有蘋果A系列的壹半。因此高通處理器的單核性能相對較弱,但較小規模的架構可以堆更多的核心,因此,高通處理器的多核心性能還是不錯的。我們能夠看到,驍龍845的單核性能依然不如A9,但多核性能已經接近A11了。
說起來很諷刺,雖然高通扼著中國絕大多數手機廠商的命門,但是單從利潤上來講,高通卻不及蘋果...
其實 iPhone的利潤高出我們的想象 。現在的蘋果公司,是打算不賣芯片的,他們主要賣手機,要知道,IOS性能吊打安卓可是壹個重要的賣點,在高利潤的支持下,蘋果有能力做 高性能高成本大芯片面積大核心芯片 ,並且還可以很快收回成本。
反觀高通,核心技術和商品都是芯片,這種情況下芯片業務收益最大化才是關鍵。那麽同樣大的晶圓,怎麽能實現做出更多的芯片和更少的廢品率呢?那就只能 芯片面積盡量小,核心架構盡量接近公版。
當然另壹層原因,就是高通現在也是吃“老本”, 沒有,或者說不需要壹個能與蘋果比肩的CPU架構研發團隊。
這是為什麽呢?原因就是經過代代開發, ARM公版完善程度已經非常高了,在這種情況下,除非有相當高的實力,巨量的金錢,才可能砸出壹個比公版更好的架構,既然高通已經做到了芯片老大地位,就沒必要再砸大錢研究新架構。
反正對於高通來說,在安卓芯片領域,他的地位有目***睹,更何況他還有我們國內這個對他不離不棄的巨大市場做保障呢。
而蘋果呢,自家有設計能力,也有從工廠到提供商、工程團隊、消費者的完備體系,簡單說就是任性,反正不管投入多少,都能收回來,那麽,就放手幹吧~
高通和蘋果均使用ARM公司的ARM架構,為何性能差距這麽大?
讓我們壹起來看看,為何蘋果處理器要遠遠領先其他廠家呢。
設計能力
ARM公司已經將基礎框架搭建完成,如何進壹步設計則看各家公司的研發實力。
所有的壹切,同蘋果高額的利潤模式同樣密不可分。
大核設計蘋果處理器芯片面積較大,並且沒有集成基帶芯片,節省了壹定空間。
系統原因壹個使用安卓系統,壹個使用iOS系統。
還有那些情況,能夠造成蘋果處理器要遠遠優於高通?
文/小伊評 科技
關於SOC架構設計是壹個非常深奧的學問,其中包括譬如總線帶寬,緩存,晶體管數量,結構等等,這些東西很深奧,就算是我也只是略懂皮毛,所以本文我們不探討這些深奧的東西,我們從其他幾個方面來說明壹下蘋果A系列處理器為什麽這麽厲害,我直接來羅列幾個因素,大家壹看就知道蘋果的A系列處理器為什麽強悍了。
01 堅持自研架構放眼目前的手機市場,能夠有能力生產高端移動SOC的壹***就只有五個,分別是蘋果,高通,華為海思,聯發科以及三星。
在這五家企業中,目前只有蘋果的A 系列處理器在CPU方面還在堅持使用自家研發的微架構,而其他幾家包括高通和三星在內目前基本上都已經放棄了自主研發架構轉而采用ARM公版的Cortex架構,譬如驍龍865這壹次就用上了CortexA77的核心。
另外筆者還要再說壹句,其實在安卓陣營當中,除了三星的貓鼬架構算是名副其實的自研架構之外(表現很差勁,早早就被放棄了),高通的Kryo架構其實就是對Cortex魔改,至於華為和聯發科則是壹開始就是用的公版的Cortex微架構。
並且在架構執行效率方面,蘋果的A系列處理器壹直是公認強於ARM的公版架構的,ARM直到最新發布的A78/X1之後才在核心執行效率方面勉強追上了蘋果的腳步。
可以這麽說,強大的核心架構是保證蘋果A系列處理器性能的基石。
02 強悍的人才儲備Jim Keller曾經任職過諸多頂級的半導體公司,譬如英特爾,AMD,蘋果等等,他曾經帶領團隊設計出了大名鼎鼎的K7系列,把AMD從破產邊緣拉回來,然後做了K8系列,在消費市場把英特爾打的擡不起頭來。 而最近被很多PC發燒友津津樂道的AMD Ryzen系列的Zen架構其實也是出自Jim Keller之手 ,就是這樣的靈魂級的人物被蘋果挖過來設計了蘋果的A4和A5處理器,為蘋果A系列芯片夯實了基礎。
而且蘋果芯片的核心團隊還遠不止如此,包括著名計算機領域領軍人物Yale Patt(計算機系統概論的作者),Tse-Yu Yeh等等,這些無壹例外都是芯片設計領域的頂尖選手。
在擁有全世界頂級的人才支持的情況下,蘋果A系列處理器擁有強悍的性能余額就不足為奇了。
03 無需內置基帶蘋果A系列處理器之所以能夠擁有遠超其他SOC的強大性能,除了在技術層面有領先之外,還有壹個非常重要的原因就是放棄了內置基帶,歷代的蘋果A系列處理器都是采用了外掛基帶的形式,既然不需要內置基帶,那麽在其他條件基本相近的前提下,蘋果A系列處理器就可以把更多的資源留給CPU以及GPU,畢竟壹款SOC性能的強弱和晶體管數量是成正比的。
蘋果之所以無法內置基帶,和他在通信領域經驗缺失是有壹定的關系的,畢竟通信領域的入門門檻是很高的,可不是砸錢就能短時間堆出來的。
而反觀其他幾家半導體設計企業,旗下的SOC全部都內置了基帶芯片,華為甚至還是第壹個將5G基帶集成在SOC中的企業,這些企業無壹例外都是在通信行業有壹定沈澱的。
也就是說,蘋果A系列處理器的集成度其實是不如高通,華為的,這可能是蘋果A系列處理器在性能方面大放異彩的核心原因。
蘋果A系列芯片性能強於高通芯片,壹個很重要原因就是蘋果A系列芯片沒有集成基帶,只由CPU和GPU兩個部分組成,甚至連WiFi芯片也沒有。因此在相同的體積和工藝制程下,蘋果A系芯片CPU的面積更大,上面可以集成的晶體管數量也就越多。
而高通本來是通信行業的,和手機處理器比起來,基帶芯片才是它最拿手的地方。所以高通芯片壹個主要特色就是將基帶芯片也集成到了處理器當中。這樣做的好處是讓基帶芯片也和CPU、GPU壹樣使用最先進的工藝制程,從而減少功耗,降低發熱量。但是手機芯片的體積那麽小,高通處理器再繼承了基帶、WiFi等模塊之後,留給CPU、GPU的空間就比較小了。因此同壹時期的高通芯片在性能上是不如蘋果A系芯片的。
但是手機不是 遊戲 機,決定手機使用體驗的除了性能之外還有很多方面,其中就包括基帶的信號和功耗。高通擁有自己的基帶技術,基帶與處理器之間的兼容性更好,因此網絡信號質量更佳,且功耗比較低,手機發熱量小。更重要的是,由於集成了基帶,其它手機廠商購買了高通處理器之後,就相當於得到了壹套完整的移動平臺解決方案,基帶、WiFi、藍牙之類的都包括進去了。
相對的,蘋果A系處理器由於沒有基帶芯片,只能尋求第三方的外掛基帶。而使用外掛基帶就存在與處理器的兼容性問題,而且功耗比較高,手機發熱量大。比如iPhone XS Max使用的英特爾基帶就是基於14nm的,而同期高通芯片集成的基帶只有7nm,兩者的功耗就差了許多。更早的iPhone X由於CPU和基帶的功耗都比較高,壹玩 遊戲 就發熱卡頓。
比較下來,蘋果A系處理器的性能好,但是信號質量稍弱壹些。而通驍龍處理器的性能不如蘋果,但信號質量更好。所以壹般對手機性能要求比較高的用戶會選擇蘋果手機,但如果對信號網絡質量比較高的用戶則會選擇高通手機。
高通驍龍和蘋果A系芯片性能差別大,原因主要是,蘋果是購買ARM的指令集授權,自行開發微架構,高通驍龍是購買ARM的IP核授權(省了開發微架構),然後魔改壹下(其實往往是增加或減少緩存,優化內存控制器等),性能會比公版內核強壹些,也就是壹些而已,比不上能獨立開發微架構的。
打個簡單的比方,同樣是做麻辣小龍蝦,蘋果是自制調料、自購食材、自己烹制。
由於是自制調料,需要什麽味道,自己配就是了;也因為是自購食材,想要哪兒的小龍蝦,下單就是了。簡單說,菜的味道可以自己做主,自由發揮空間最大。
高通是購買現成麻小調味包,小龍蝦也由ARM提供,調料和食材沒得選(只能接受ARM標準化產品),回家倒鍋裏壹煮,想味道重壹點,少加小龍蝦,想味道淡壹點,多加小龍蝦,麻辣的味道,他是沒法調制的,發揮的空間沒有蘋果那麽大。
公版內核?相當於買現成全套已經煮熟的小龍蝦,放鍋裏加熱後食用,完全沒有自由發揮空間。
所以,看壹家芯片設計公司能力的大小,能否獨立設計微架構是壹個重要指標。 像桌面CPU領域,英特爾和AMD是能獨立設計微架構的,所以桌面CPU領域成為兩家的後花園。
但是,凡事有利必有弊,自己設計微架構,對團隊的設計能力要求非常高,尤其團隊帶頭人,往往能決定芯片的競爭力。
後來,吉姆又從AMD離開,進了馬斯克的特斯拉,幹了壹陣(在壹家公司呆的時間平均不超過3年),又去了英特爾,直到現在離職。
最後總結壹下:優秀的設計師帶來好的微架構,好的微架構帶來性能超猛的芯片。芯片業的規則就是這麽簡單,而且直白。如果從芯片的角度來說,高通和蘋果的產品不完全基於ARM,不過,總體的印象來說,蘋果的A系列芯片確實會好過高通。下邊先列舉幾個整體性的原因,後邊說壹些關於CPU的內容。
1、時間差。高通的旗艦芯片大多出現在年初,而蘋果的產品是在秋天,兩款芯片之間是有著半年多的時間差。比如高通驍龍845表現非常不錯,結果到了秋天,蘋果弄出來壹個A12。第二年高通的855出來了,但是產品上市,鋪貨,七七八八的事情處理完成,855這樣的芯片大範圍輸送到用戶手裏可能要到年中,然而蘋果下壹代又要快來了。
壹般來說事情有個先後,而年份又是壹個非常重要的整體概念和劃分依據,即使兩方的設計能力相當,並且都意圖設計最好的芯片,但這種時間上的差就會造成晚出來的那個會有更好的表現,也更容易使用最新的壹些技術。另外,蘋果的運營效率不得不佩服,A系列芯片可以瞬間觸及用戶,技術的傳到也會帶來技術感知上的時間差。
2、產品擋位。芯片的表現是壹個綜合的概念,也要通過產品來實現。由於蘋果品牌和價格上的優勢,產品屬於高端的原因,蘋果手機的整體定位傾向於市場上最好的那類,如果產品表現好,也會去部分帶動芯片的表現。
其中壹個比較重要的環節在價格,依托iPhone高端上比較大的銷量,蘋果可以在芯片上大量投入,可以把高性能的芯片更好的賣出去。這種更為良性的循環可以推動蘋果設計出更好的芯片。安卓這邊由於產品擋位鋪的比較大,中低端的產品不再少數,其中壹些芯片並沒有使用那麽先進的技術,而國內壹些性價比的機型在突出性能的同時,在整體素質方面也會多少有些不足,這些在產品端的不足會對芯片的表現帶來不利的影響,甚至可能不能發揮芯片性能的極致。當然,這裏說的不光光是跑分,芯片是壹個非常綜合的東西。
3、不同的平臺。這個方面其實很好理解了,也就是經常提到的優化問題。
喬布斯提到壹個類似這樣的觀點,好的軟件公司都要有自己的硬件。軟件是我們接觸最直接的部分,系統相應, 遊戲 表現等都是軟件的圖像帶來的直接反饋。蘋果的A系列芯片是為IOS專門定制,整體表現會占優勢。反過來說,IOS就像是壹個優化器,可以把A系列的性能更好的展現出來。
手機畢竟是多功能集成的產品,IOS的規則可以更好的實現資源調度。最常見的例子:安卓的後臺問題直到現在還是會多多少少拖累整機的表現。
總體上來說,由於時間差,產品定位,不同平臺的問題,蘋果和高通的芯片在最終表現上確實會有差距。
不過從目前的表現來看,兩者之間的差距其實並沒那樣巨大,壹則是芯片技術的發展,另外壹個原因在於手機這個品類的成熟。當中檔產品已經可以滿足大部分需求的時候,高端芯片差距的感知也會變少。
問題中提到了ARM,這裏簡要說幾個關於CPU的部分,也應該是熟知的部分了。
1、指令集
提到ARM,最直接的關聯是指令集。ARM定了很多規範,不過蘋果和高通如何使用這些規範則是另外壹回事兒。而規範的使用和規範的制定存在相互影響,很難說蘋果的芯片就是完完全全的按照ARM的規範來,也有可能是蘋果和高通在壹些地方用的好進而影響規範的制定。總之,ARM作為芯片行業中重要的壹員,但並不是說萬物就基於ARM。另外,現在手機芯片集成的功能很多,ARM也並不能完全覆蓋,比如常說的人工智能芯片,GPU,ISP,網絡模塊等。
2、架構
蘋果和高通的芯片架構差別,比如A12,六核心,兩個Vorex核心,四個tempest核心。
高通驍龍855,八核心,壹個prime核心,三個performance核心,四個efficiency核心。兩者在緩存,內存控制,調度極致方面肯定有很多不同。不過究竟哪個好還是會回到前邊的內容,最終的產品和平臺如何使用。另外,在宣傳策略上也會有差異,蘋果經常是丟出壹句,非常強,參考對象變成了英特爾。而高通這邊,除了和蘋果芯片競爭,還要面對華為,三星等芯片的競爭,總體思路上也會有壹些變化。
以上還只是CPU這壹個部分,整個芯片的架構和最終表現的差異最終會更大。總體來說,把蘋果和高通的芯片直接對比很難說的清楚。