蘋果發(fā)表初代「Apple Silicon」M1 處理器后,其優(yōu)異的性能表現,加上多年來世人對「擠牙膏」的Intel 和「毫無道理可尋」x86 指令集,長期累積的不滿,一次「業(yè)力引爆」,導致很多人瞬間失去了知識、理智和常識。
除了網絡上滿滿的吹捧其跑分性能的歌功頌德文,以排山倒海之勢,把人炸得昏頭轉向,連更換底層硬件架構之后最重要的軟件兼容性都忘的一干二凈,更不乏「微軟將棄x86 而典范轉移到ARM」、「Wintel即將土崩瓦解」和「蘋果將強勢重返服務器市場」等缺乏邏輯的橫空高論,紛紛傾巢而出,仿佛讓人活在蘋果早已統治電腦工業(yè)的平行時空。
筆者將會深入探討蘋果M1 的優(yōu)勢、劣勢與對業(yè)界造成的真正影響,但在一堆人還在一頭熱的當下,為了避免任何的誤解,索性先將「結論」寫在前頭:
蘋果M1 的優(yōu)異性能的根本基礎是臺積電5納米制程與160 億晶體管,這簡單的道理,只要想想還在受困于10 納米制程良率,和AMD Zen 3 依舊停在臺積電7 納米,即可明白。
蘋果M1 的優(yōu)劣勢皆來自于其封閉生態(tài)體系,蘋果過去強行將iOS 和macOS 的應用程序全面64 位元化,就是為了Apple Silicon 的長遠布局,讓他們可以專心針對64 位元AArch64 最佳化,無須顧慮32 位元昔日包袱的執(zhí)行效率。
Apple Silicon并非毫無風險,不只轉型陣痛期,更賭上了「究竟會有多少「假果粉」Mac用戶非要安裝原生Windows不可」和「會因為更好的整合性,愿意皈依蘋果神教的新興信眾」,哪一邊會比較多。
只要蘋果沒有想不開出售芯片給其他人,或者微軟棄x86 轉向ARM,就算蘋果自研處理器在自己的電腦上跑自家的軟件再快,Mac 區(qū)區(qū)不到7% 的個人電腦市占率和不足2,000 萬臺的一年出貨量,絲毫動搖不了Wintel 和x86 生態(tài)系統的基本盤。
在商言商,戰(zhàn)略重心早已轉向云端的微軟,操作系統從x86 全面轉移到ARM,或著只弄出個特化版Windows,現階段對他們根本一點好處也沒有,做個M1 原生的Office 就該謝天謝地了。
同理可證,最終目標放在維持自家生態(tài)系獲利的蘋果,自然也沒有跨界的必要。自從iPhone 4 開始使用自己的A4 處理器,蘋果就從未對外銷售芯片,有什么理由相信他們會瞬間策略大轉彎?
有鑒于過去Xserve 和Xserve RAID 的慘痛教訓,蘋果很難有動力重返因出貨重心轉移到云端巨頭自行客制化的數據中心,而導致利潤早已大不如前的品牌服務器市場。
蘋果M1 對業(yè)界真正的影響與對Intel、AMD 最不利的因素,在于這將鼓勵云端巨頭更積極的打造自用的ARM 服務器處理器,而這也是以ARM 為首的芯片IP 生態(tài)圈最重要的價值:用最短的時間和最少的費用,用拼積木的方式,研制出Time To Market 的產品。
AMD 重新啟動K12 微架構專案,推出相容ARM 指令集的EPYC,可能性慢慢的上升中,假如成真,「處理器游俠」Jim Keller為此重回AMD(他先前在AMD 時,原本要操刀這個專案),也不會是太令人感到意外的發(fā)展。
以電腦工業(yè)歷史的角度,從A4 到M1 的發(fā)展歷程,象征著「只要有制程優(yōu)勢和夠大的市場基本盤」,RISC 絕對比CISC 更能輕易生出兼具高性能與低功耗的處理器微架構,這是IBM 無緣享有的先天利基。
大概就是這樣,但還是強烈建議各位繼續(xù)硬著頭皮看下去,你將會有更多的收獲。
M1的天時、地利與人和
蘋果M1 的單核跑分一舉追上Intel 和AMD 的最新x86 微架構(WillowCove、Zen 3),其實并不會讓人感到一絲一毫的意外,畢竟天時、地利、人和,都站在蘋果那邊。大家還記得電影少林足球的強雄的經典臺詞嗎:「球證、旁證、技術委員、主辦、協辦、所有單位都是我的人,你們怎么跟我斗!」
天時:臺積電和Intel制程技術出現了看似一去不回頭的死亡交叉。在過去,x86指令集兼容處理器之所以能夠跟「高效能」劃上等號,仰仗著領先眾多RISC體系的制程技術優(yōu)勢,以及蓬勃發(fā)展的個人電腦市場,才有那個資源去支撐動輒3到5年的產品開發(fā)周期,現在反倒是蘋果占了這些便宜。
地利:靠著1年超過2億部iPhone和5,000萬臺iPad的雄厚本錢,蘋果率先啟用臺積電5納米制程,而Intel卻連擠10納米牙膏都擠不太出來。至于AMD大概都準備把有限的資源,集中在5納米的Zen 4和3納米的Zen 5了。
人和:蘋果在2017年底的iOS 11完成了iOS App純64位元化,也在2019年macOS Catalina全面終止32位元App支援,不但讓蘋果可全心全力發(fā)揮64位元ARMv8-A的潛能,也簡化了Rosetta 2二進位碼動態(tài)轉譯器的復雜度,只要轉換x86-64到ARMv8-A,而且也不包含難搞的AVX、AVX2和AVX-512,這對改善效能當然也有立竿見影的效果。
當RISC 處理器享有昔日x86 的制程優(yōu)勢與市場規(guī)模
智能手機就像昔日的個人電腦,給了消費型RISC 處理器一塊逐漸茁壯成長的沃土。蘋果M1 的最大成就,莫過于將IBM Power 等級的超高階RISC 心臟,以一般人可以接受的成本與價格,搬到了筆記型電腦里面,創(chuàng)造了地球上最強大的移動式運算處理器。
當年曾經參與PowerMac 的IBM 高層與眾多RISC 先驅者,看到蘋果終于在M1 修成正果,不知是否后悔并未認真替蘋果研發(fā)適用于筆電的PowerPC 處理器,眼睜睜的看著Power Everywhere 戰(zhàn)略大計,失去了最大塊的基本盤,使其終究沒有實現的可能性。
時過境遷,讓人不勝唏噓,更使人不得不好奇,2 位當代RISC大師David Patterson 和John Hennessy,會如何在未來的新版電腦組織結構教科書中(《計算機體系結構:量化研究方法》),對蘋果M1 寫下怎樣的評語。也許他們的心情也會五味雜陳吧?
抽絲剝繭M1 為何如此強大
看跑分看得很爽是一回事,但要透徹領悟支撐這些數字的技術卻非常的困難,筆者就先依據列出幾個規(guī)格,比較蘋果M1(高效能Firestorm、低功耗Icestorm)、 Intel Tiger Lake-U(Willow Cove 微架構)、AMD Ryzen 5000 系列(Zen 3 微架構),讓各位瞧瞧臺積電5 納米制程和160 億晶體管的威力究竟有多么巨大。因GPU 相關資料仍過于有限,本次聚焦在CPU 的部分。
光從這張晶體管數量、芯片面積和整合的功能,就足以見證臺積電5 納米制程有多么的可怕,這才是M1 強大的根基,其他的講再多都是多余,也讓人極度期待AMD Zen 4 的規(guī)格與表現。
再來看看決定IPC(Instruction Per Cycle,每個時鐘周期的執(zhí)行指令數)上限的指令解碼寬度和亂序指令執(zhí)行核心(OOOE,Out-Of-OrderExecution)的重新排序緩沖區(qū)(ROB, ReOrderBuffer)。乍看之下,M1每個時鐘周期最多可解碼8 個指令(其實從A11 就差不多是這樣了),完全是IBM Power 的等級,似乎很厲害,但這本來就是指令編碼格式統一、長度固定的RISC,應當享有的先天優(yōu)勢。更何況,一個「相對簡單」的x86 指令,其工作量可能就相當于1.5-2 個ARM 指令,Intel 和AMD 又有微指令Cache加持,換言之,解碼器寬度的差異性并沒有那么大,唯一可以確定的是復數x86 指令集的解碼器,真的非常的難實作。
但亂序指令執(zhí)行核心的規(guī)模差距就讓人瞠目結舌了,幾乎都是最新型x86微架構的2-3 倍,世上唯一凌駕于蘋果的,只有單一核心可同時運行「1,000 個指令(In-Flight )」的IBM Power10 了。同場加映ARM 本家最強的Cortex-X1:ROB 也只有224。此外,藉由4 個128 位元NEON 運算單元,Firestorm 的浮點指令輸出吞吐量,為現有新型x86 微架構的2 到3 倍。就算論數據更寬的SIMD 指令集,「極度向量電腦化」的SVE(Scalable Vector Extension),其未來性也遠勝于AVX-512,就看蘋果想不想用。
蘋果歷代Ax 處理器一直有一個為人稱道之處:規(guī)格簡單粗暴、但性能表現強大到讓人感覺很不真實的存儲器子系統,M1 Firestorm 核心「6 倍」于Intel AMD 的L1 指令快取,在前代A13 就有128kB 的等級。Icestorm的L1 指令與數據快取容量分別是128kB和64kB,但也多于現有x86 核心,連4 核共用的L2 快取也有4MB。
當然,x86 因大量指令直接以存儲器做為運算目標、使其非常的「Memory Intensive」,以及指令格式混亂,激增了快取存儲器的復雜度,但「其他」的ARM 指令集相容處理器至今仍遠遠不及蘋果的成就,卻也是不爭的事實。
不過,在規(guī)格表上看不到的秘密是:iOS 11 全面軟件生態(tài)系統64 位元化之后,蘋果Ax 處理器「很可能」早就放棄32 位元兼容性(或著就算能用也是跑得很慢),這是連IBM 都無福消受的天大優(yōu)勢,畢竟數十年來,還是有一大票老舊的企業(yè)服務器應用程序,在今天還在線上服役。也因此,當震驚于M1 的優(yōu)異表現之余,各位也請冷靜的想想,這根本就是一場不公平的競賽,而蘋果M1 與其后代,也注定難以走出自家的封閉花園,有誰會想要一顆跑32 位元應用程序很慢、甚至根本不能用的ARM 系統單芯片?
重回服務器市場的機會還是非常渺茫
這年頭只要一提到「高效能」,很多人的身體就會本能性自動反應「進軍服務器」,不過「服務器」等級的處理器,并不是空有高效能,即可功德圓滿,高可用度、高穩(wěn)定度、更精細的虛擬化管理機能、更完備的管理機制、與操作系統高度整合的錯誤回報技術,都是必要的條件。充足的I/O 完整度、供給充沛頻寬和容量的存儲器子系統、大型化多處理器/ 多核心仰賴的高效率快取數據一致性協定(Cache Coherence)等,更是不可或缺。很明顯的,目前這個M1 還是遠遠不及IBM Intel 和AMD。
某些高人相信蘋果可以一步一步慢慢來,先從「邊緣計算(Edge Computing,如歐洲電信標準協會定義的5G MEC)」服務器切入,但也得蘋果有類似電信營運商的需要。更何況,邊緣計算服務器,往往會被布署在環(huán)境較為嚴苛的地點,等于一腳踏入工業(yè)電腦廠商的守備范圍。除非蘋果對「服務器」有著突破性的定義和創(chuàng)新,否則像Google 云端TPU 一樣「自研自用」替使用者提供云端服務,是最有可能的方向,但也絕非一蹴而就的。
關于蘋果是否將重回品牌服務器的議題,無論如何,機會都非常的渺茫,況且蘋果在「企業(yè)端軟件解決方案」這部份的資產幾乎是零,為此開辟一個獲利不高的血腥戰(zhàn)場,對他們并不劃算,沒必要重蹈當年Xserve 的覆轍。
延伸到自家數據中心的可能性激增
話說回來,看在蘋果的Mac Pro 里面還有一顆「28 核心」Xeon 要用自家芯片取而代之的份上,說沒有高端產品的開發(fā)計劃,絕對是騙人的,這也可能觸發(fā)蘋果連數據中心都逐步轉移到自家芯片的可能性。蘋果在2015 年在其數據中心將VMware 轉向開源的KVM,現在看來,并非區(qū)區(qū)只為了節(jié)省2 年2,000 萬美元的軟件授權費用,背后隱藏了更巨大的布局。
只不過,到頭來,這些目前尚未存在的「服務器等級AppleSilicon」,也是蘋果自家限定,外人無緣一親芳澤。只希望這間公司哪天想開了,愿意站上IEEE、ISSCC 和HotChips 的演講臺,讓世人一窺其神秘芯片家族的廬山真面目,但這件好事成真的機會還是很渺茫就是了。
M1 的下一步?
M1 只是蘋果小小的第一步,后繼將會推出更高端的產品,但對蘋果最重要的并非效能,而是設法加速軟件生態(tài)圈轉移到原生版程序的進度,像時下「Rosetta 2 跑得不順、甚至無法安裝應用程序」、「印表機等周邊驅動程序無法運作」、「電池續(xù)航力遠不如官方宣稱的持久」等,都是蘋果急需迫切解決的難題。
雖然蘋果生態(tài)圈常見「只要搞定微軟Office 和Adobe 就等于解決80% 需求」的論點,但除非你只會用得到Safari 和macOS 內建的應用程序,要不然當下的確不是入手M1 心臟MacBook 的好時機。
從M1 回頭檢視RISC 與CISC 的戰(zhàn)爭
人類第一臺RISC 電腦IBM 801 計劃的主持人John Cocke,假如地下有知,應該會感慨萬千吧。長期壟罩在x86 陰影之下的電腦工業(yè),仿佛暗云散去,照出了一道道充滿希望的曙光。
「x86 義和團」和「RISC 十字軍」的戰(zhàn)爭,持續(xù)了20 幾年,隨著前者的自滅和M1 的問世,后者近來開始有「蠕動」的跡象。但筆者還是得提醒一個血淋淋的前提:蘋果是一個「瓶中生態(tài)系」的封閉花園,里面再怎么枝繁葉茂,就像茶壺內的風暴,對外面的世界幾乎難以帶來直接的沖擊。
反過來說,蘋果M1 的誕生,對整個電腦工業(yè)界并不算壞事,最起碼足以讓Intel 和AMD 受到更強烈的刺激,促使他們加快研制更性能強悍的處理器,而不是像Intel 的Skylake 微架構一樣,一用就是4 年,然后這段「牙膏期」就讓ARM 指令集兼容處理器,效能激增到足以挑戰(zhàn)高階x86 微架構的水準。
庫克終于實現了喬布斯的未竟之志
將冷冰冰的技術規(guī)格束之高閣,來談點比較感性的東西。
回顧蘋果在2008 年并購PA Semi 時,外界普遍不看好喬布斯的大膽決定,也一度無消無息到讓人以為蘋果早就放棄了,直到iPhone 4 才讓大家知道蘋果是玩真的。12 年來,在這個研發(fā)先進制程高效能處理器動不動就燒掉10 億美元的年代,蘋果持之以恒的將自己的芯片一步一步從手機平板推進到自家的Mac,怎么算都耗費了數十億甚至上百億美元都有可能,所以這也是筆者對于那些宣稱Apple Silicon 單價只有「幾十美元」的產業(yè)分析師嗤之以鼻的主因,你們是以為「研發(fā)」這件事是不用成本的嗎?
蘋果熬了這么久,也做了這么多的超前布署(軟件生態(tài)純64 位元化、數據中心舍棄VMware),背后一定滿滿來自喬布斯那未竟的執(zhí)念,而庫克總算實現了他的夢想,這才是M1處理器,真正讓筆者有感的地方,也沒有任何東西比M1 更能吊祭已不在人世的史蒂夫·喬布斯。