明年出 ARM 版 MacBook?蘋果面臨的問題有一大堆
北京時間 6 月 23 日凌晨 1 點,蘋果即將召開第一次線上開發者大會活動——WWDC 2020。
按照慣例,這是一個屬於開發者的饕餮盛宴,人人都在期待新的 iOS 14,期待新的 macOS、iPadOS、watchOS、tvOS 等等。 因為大家都知道硬件更新一般都要等到秋季和春季。
但今年的 WWDC 上可能會有一些對硬件事關重大的變化措施。
就在最近,傳出了蘋果要轉換平台的消息。準確點説,是蘋果準備推出 ARM 版本的 MacBook 產品,而最近幾年和在售的筆記本與桌面產品,蘋果一直使用的是英特爾平台。
▲ 從 PowerPC 轉向 intel. 圖片來自:iMore
從英特爾到 ARM,是整個軟硬件生態的遷移
其實平台轉換這事蘋果並不是第一次幹,早在十五年前蘋果就經歷過一次從 IBM 的 PowerPC 平台轉換到英特爾平台。但今天和 2005 年不一樣,當年蘋果的平台轉換需求是十分迫切的,因為 IBM 本身設計能力跟不上,PowerPC G5 的功耗和發熱都很高,根本不適合筆記本電腦這樣的移動平台。
根據知乎用户@蓬岸 Dr.Quest 在相關問題下的答案,我引用了一部分蘋果從 PowerPC 轉向英特爾幾個比較重要的時間節點:
引用2005 年 7 月 6 日,蘋果宣佈進行平台轉換,並向部分開發者提供開發者轉換工具(Developer Transition Kit),同期發佈的 Xcode 2.1 支持生成通用二進制(universal binaries)格式的應用程序。
2006 年 1 月,蘋果發佈 15 寸 Macbook Pro 和英特爾處理器的 iMac。
2006 年 8 月,蘋果發佈英特爾處理器 Xserve,完成產品線的轉換。QuarkXPress 7.0 以通用二進制形式發佈。
2007 年 10 月,Mac OS X 10.5 發佈。這是最後一代可以安裝在 Power PC 處理器上的 Mac OS X。同期發佈的 Xcode 3.0 增強了對 64 位處理器的支持
2009 年 8 月,Mac OS X 10.6 發佈。10.6 以及更新版本的 Mac OS X 無法安裝在 Power PC 處理器的蘋果電腦上,但仍然提供 Rosetta 轉譯器使用户可以繼續使用為 Power PC 處理器編譯的軟件。
2011 年 3 月,Xcode 4.0 放棄了對 PowerPC 處理器的支持。
2013 年 8 月,蘋果結束對 PowerMac G5 的支持。
▲ 圖片來自:AppleInsider
蘋果當時能夠轉換成功有很多現實原因,比如當時體量比現在更加小眾,英特爾在移動處理器方面足夠強勢等等。而如今 iPhone 的爆紅和蘋果生態粘性的逐漸加大,在 Mac 平台上促生了大量的 iOS 開發者。
移動平台的壯大成熟,也反哺了桌面平台,現在很多開發者都是先從 iOS 起步,之後再轉向 OS X(macOS)開發,從軟件生態上就能看出來,先有的 iOS 版之後才有的 Mac 版的情況並不少見。
而在 iOS 時代之前,Mac 的生態其實處於比較小眾的狀態,甚至説難聽點就是蠻荒時代,和今天完全無法相提並論,自然也是沒有歷史包袱。
▲ 圖片來自:IDC
根據 IDC 的統計,2005 年蘋果電腦的出貨量為 217 萬台,而在 2019 年這個數字達到了 1768 萬台。這其中固然有筆記本電腦市場整個市場的擴大,但 Mac 的市份額仍然提升到了之前的兩倍。
而從絕對數量上説,如今使用 Mac 電腦的人數,可能是十幾年前的十倍。今天蘋果是這個世界市值最高的公司,要撬動這個龐然大物的生態,即便是蘋果自己來做也着實不容易。
從英特爾切換到 ARM,所面臨的最大問題可能是整個軟件生態的顛覆。
▲ 圖片來自:blopeur
如果把這些眼花繚亂的軟件追根溯源,我們可以回到處理器和軟件運行最原始的一種關係——指令集。
簡單説,指令集就是處理器運行的「指導思想」,是一套讓處理器能理解程序的行為規範。如果「指導思想」不同,那肯定就沒有互相理解的基礎,而基於這一整套架構開發出來的下游軟件就像由此衍生的各國文化,但亞洲不懂非洲的文化,非洲也不懂南美的文化。
如今的 macOS 其軟件生態構建在多年來使用的英特爾處理器上,而英特爾使用的是 X86 架構,現在整個 macOS 軟件生態都遷移到了 64 位,也可以説是 X86-64 或者 X64 架構。
▲ 圖片來自:9to5Mac
像 iPhone 等移動產品使用的芯片則用的是 ARM 的 ARMv8 指令集,你別看現在蘋果已經使用自研的架構多年,但在指令集部分依然是基於 ARMv8 的,不過傳聞説蘋果也準備對指令集這部分動手了。
也就是説,桌面設備和移動設備在指令集的層面就是不一樣的,所以換到 ARM 平台後,軟件是並不能通用的。
有人可能想説,那個誰,微軟不是早前一點也發佈了使用 ARM 芯片的 Surface 產品嗎,就那個 Surface Pro X,它不是也能直接運行 Windows 10 的程序嗎?
沒錯,Surface Pro X 使用的 Microsoft SQ1 的確是微軟找高通定製的 ARM 處理器,同時運行的也是完整的 Windows 10 而非先前 Windows RT 那樣的「殘疾版」系統,同時也能運行 Windows 10 的應用。
但 Surface Pro X 的問題依然很多,比如它只能運行 UWP 應用和 32 位的 Windows 應用,基於 64 位開發的軟件就無法支持。另外通過翻譯架構的方式兼容 win32 應用導致性能出現大幅損失,效率大概只有原生應用的 30%-40%,更別説閃退、軟件重啟等各種各樣不穩定的小毛病。
▲ 微軟 Surface Pro X.
而對於蘋果來説,連通過翻譯架構兼容 32 位的程序也無法實現,因為蘋果已經通過自己對生態的控制力將全部的應用遷移到了 64 位。而面對大批不能直接運行的軟件,這個陣痛期一定會比想象中的更痛。
蘋果能做的,就是通過自己的控制力,去要求開發者將已有的軟件在一定的時間內編譯成 ARM 平台可以運行的版本,只是這並不是一件容易的事,畢竟各個軟件的情況複雜,某些軟件要想遷移到 ARM 可不是重新編譯一下那麼簡單。
▲ Dell XPS 13 2020. 圖片來自:Dell
在軟件之外,如今的 ARM 在性能和功耗上可能也佔不到什麼優勢了。無風扇的被動散熱,接近 20 小時的續航,如今已經陸陸續續被非 ARM 的筆記本完成,比如最新的戴爾 XPS13 2020 就號稱有最長 19 小時續航。
而且對於桌面環境來説,蘋果目前基於 ARM 的 A 系列芯片性能仍然是不夠的,比如頻率已經處於「灰燼」狀態,再往上就撞到了功耗牆,也就是沒有超頻或者説像英特爾處理器類似的睿頻空間。
更別説十幾二十個核心的高性能服務器版本,還處於路漫漫其修遠兮的狀態。
如果今天 MacBook 還在被説散熱不佳和續航普通,那蘋果可能應該更多在自己身上找找原因,比如 WWDC 2020 都快來了但還是 Bug 一身的 macOS 10.15 Catalina?
▲ 運行 Windows 的 MacBook. 圖片來自:Jon Rettinger
選擇 ARM 對蘋果來説可能還有一個預料之外的打擊——這些蘋果電腦將不再能用 Windows 系統。
眾所周知,購買 MacBook 並不一定等於加入蘋果生態,選擇裝 Windows 系統使用的用户也大有人在,因為本身蘋果早就敏鋭的察覺到了這件事,並推出了 Bootcamp 工具讓用户能夠選擇雙系統運行,但如果推出 ARM 版,那肯定無法使用了。
ARM 版 MacBook 的對手還有 iPad Pro
比起生態遷移和兼容帶來的不確定,ARM 版 MacBook 其實並沒有什麼外敵,Surface Pro X 肯定不算,這個產品在微軟這裏只是一款實驗性產品,而真正會對 ARM 版 MacBook 造成威脅的,其實是內患。
當「你的下一台電腦何必是電腦」的廣告語從今年 iPad Pro 宣傳片中蹦出來的時候,就意味着 iPad 和 MacBook 這兩條原先還算平行的線路終於「火星撞地球」一樣,正式短兵相接了。
如果對比一下這兩條線,可與看到 ARM 版 MacBook 其實處於一個很尷尬的位置。
iPad Pro,採用 ARM 處理器,使用精簡指令集,iPadOS 系統脱胎於移動設備 iOS,在妙控鍵盤的加持下從移動走向桌面。
MacBook,英特爾處理器,使用複雜指令集,立足於 macOS 桌面操作系統和生態。
ARM 版 MacBook,採用 ARM 處理器和精簡指令集,繼續使用 macOS 的話原先的桌面生態會丟失,只能通過部分移植應用或者 zh 虛擬機的方式運行之前的桌面軟件,效率大打折扣。
其實到這裏我依舊沒有想通,蘋果出一個 ARM 處理器版 MacBook,失去了桌面生態最大的優勢,然後去和 iPad Pro 打架,這究竟是一個什麼樣的邏輯,或者説其巨大的內在驅動力到底在哪。
當然,倒也並非找不出蘋果想要這樣做的理由,比如説想要對自己的產品和生態有更多的控制力,就像 iPhone 上使用的自家 A 系列芯片,早期的時候 CPU 用的是三星的,GPU 用的 PVR,到了後面全部變成自研架構之後,A 系列芯片的性能才算在手機和平板中一騎絕塵。
▲ 圖片來自:TechCrunch
而現在 iPhone、iPad、乃至 Apple Watch 這些產品的生態與核心硬件已經被蘋果攥在了手裏,幾乎就唯獨筆記本和桌面系列還要看英特爾的臉色,像英特爾過去幾年那種「擠牙膏」以及打磨 14nm 的行為,對於 MacBook 系列來説其實是挺大的一個掣肘。
但最後我還是覺得這樣的理由不足以説服我,至少我不覺得英特爾沒有餘力。
因為英特爾過去幾年的「擠牙膏」,很大程度上是因為 AMD 在 K10 架構的錯誤方向之後一直沒有緩過勁來,直到 Zen 和 Zen2 架構的奮起直追,終於讓很多人喊出了「AMD Yes!」。
▲ 圖片來自:TechSpot
面對 AMD 的窮追猛趕,英特爾確實在製程上遇到了一些困難,導致新的工藝節點一直在延後,但在這幾年中並非只是放羊摸魚而沒有技術積累,新品 Tiger Lake(Willow Cove 架構)性能提升明顯,終於牙膏管擠出了一截。
而從英特爾轉向 ARM 也非朝夕之功,顯然還有好幾年的路要走,甚至可能要付出移山挖河般的時間和財力才能逐漸追上,而那個時候,可能已經是 2025 年甚至更久之後了。
資料來源:愛範兒(ifanr)