Apple 在今天(11/11)凌晨發布了新的CPU改版計畫,如預期的不再使用 Intel 的 iCore 處理器,而是自自行推出了整合性晶片 M1。如同過去解析 Apple 前幾次發表會,這次未來手帖也提出自己的看法。
68000、40、601、G3、G4、Pentium、Core i7、M1 的故事
歷史上 Mac 的 CPU 總共經過四次不同策略的變化,1984年第一台Mac電腦就是採用 Motorolla 的 68000 處理器,之後延伸到 68020、68030,1991 年使用 68040 處理器 Quadra 才擺脫了軟體互換性不足的問題。什麼叫做互換性不足?過去的那個時代,即使連同一家公司生產的處理器,上一代的軟體無法在下一代處理器執行,這就是一種互換性問題。而且開發的時候都以最高速的處理器速度為準,根本沒人在意軟體的使用者經驗。Apple 對於處理器速度的執念從歷史上可見一斑。
另外 68000 系列處理器還有一個嚴重的問題,技術上說起來是浮點數,也就是在計算虛數單位的時候,(機率上)可能有錯誤。即使這麼一點點的錯誤也讓軟體品質非常不穩定,隨時都有可能會當機。雖然工業電腦或是大型處理器的時候,浮點數錯誤才可謂是致命性傷害,但是對於消費者的角度看來,個人電腦不應該會有浮點數問題,但的確卻是發生了。
換成 68040 的穩定性也只有 2 年,在處理速度實在趕不上主流的個人電腦時,1993年 Apple 有個一個更大的改版,從 CISC 架構轉換成 RISC (這也是現在的主流RISC-V的前身),同時打造了耳熟能詳的 PowerPC = Power Macintosh 登場。因為IBM跟 PowerPC 同樣使用的 RISC 架構一樣,也讓當時的人們燃起這兩間公司即將打倒 Intel 的猜測:系統廠未來將會有自己的晶片,專業處理器設計公司將不復存在。
這論點也頗像現在 Intel 跟 AMD、ARM 的戰爭,不過,你知道故事總是沒有憨人想得這麼簡單。
PowerPC 雖然解決了以上問題,效率也大幅提升,卻也面臨到 TaligentOS 跟 ScriptX 的開發品質不佳的問題。加上 Window + Intel = Wintel 結盟,開放性競爭戰勝了封閉式的 Apple、IBM 等系統廠,Apple跟 IBM 被迫轉換路線,甚至 IBM 被迫放棄了PC業務,賣給了Lenovo(這又是另外一段故事了)。
沒有放棄PC系統的 Apple 低迷了一陣子,1997年迎回賈伯斯為執行長時買回 NeXT。NeXT基本上還是使用 68000 系列CPU,但效率跟散熱問題仍就無明顯解法的情況下,2000年後半換回了 Intel 架構,此時就是所謂的 Mobile (iPhone) 的時代了。在iPhone裡,apple 仍舊保持一貫的封閉式創新,iPhone 的A1-A14 (Biomic)與S1-S6,基本上都是走自有晶片研發的思考邏輯。
講回來 Mac 這次從 intel 換 M1,面臨到的第四個變化不在於處理器的品質問題,換到 ARM 架構的 M1 晶片技術上對品質根本不構成問題,我認為最終還是為了MacOS + APP (Objective C) 的硬體環境而做出的決定。Apple 認真認為系統廠商的硬體裡應該要為軟體服務,並不是各行其是。
平行開發轉成整合設計
過去軟硬體有平行開發的邏輯,在每一代硬體改版前會先送個改版的規格書與修改細節給軟體廠商,軟體廠商再將自己的功能整合到新的平台,例如32位元要大幅改版到64位元時,就會面臨到俗稱平行開發的情境。不過M1的狀況顯示出,未來在MacOS開發的軟體可以直接換到iPhone、iPad跟Mac硬體,形成整合性開發環境,這會大大的改變軟體思維,也會減少許多軟體設計時因為互換性所造成的功能犧牲。
對 Wintel 陣營來說,對於軟體開發者的整合設計環境才是真正的問題跟對手,不只是CPU轉到ARM架構比較省電節能這樣而已。Wintel 已經證明自己是開發網路應用的最佳平台之一,但仍然受到行動運算開發環境上的限制,許多改版作業都沒辦法很順利完成。雖然無法預期這樣的轉變會有多少軟體公司願意跟進,但不可諱言的是應該會有更多人投入在Apple環境裡開發應用程式。
另外,雖然有介紹拼圖的另外一塊 Neural Engine ,但其實我們對它所知甚少,基於機器學習的方法能夠加速之外,也可以做為整合設計的核心,如果想要使用機器學習(Machine Learninning)開發的工程師在低階開發環境上或許會擺脫 nVidia 的束縛,用Mac mini 部屬簡單的邊緣運算(Egde Computing),這也是現在 Intel 推MiniPC最大的敵人。
追加記事:M1 不支援eGPU
過去的 Intel 處理器對於圖像處理的部分幾乎都是依靠外接顯卡,也就是一塊圖像處理晶片(GPU)處理即時運算。依照報導顯示,新的 M1 處理器卻不支援外接顯卡,而是單純使用M1裡的圖像處理晶片解決,這跟過去處理器各司其職的做法有差異。我們不是技術型報導,實際上的效能表現要看評測結果,但是這個舉動對於使用者行為有什麼樣的差異,是我們觀察的重點。
使用者在效能不足的時候,除了更換整機之外,就屬於擴充設備最讓人感到煩躁。例如以前的電子設備都可以隨意插拔記憶體、電池、IO Port 等等,但是到了蘋果採用封閉式硬體設計以減少故障維修的比例(當然也增加了故障無法自主排除障礙的壞處),所有的元件都變得只能內建無法隨意擴充。GPU 是唯一的例外,如果你是 Macbook Pro 的使用者就可以使用 Blackmagic eGPU 外接擴充顯卡,這對需要大量圖形運算的使用者是件非常好的事情。
現在整合到 M1 晶片之後,可以料想的是Macbook Pro的使用者也許會思考該不該換成 Windows 平台,對於 Apple 而言更是個豪賭,因為這意味著放棄了最高端的創作者族群(或者說是最容易變心的追求生產力族群),對於Macbook Pro銷售可不是一個好消息。說不定可能在下一波更新的時候就把eGPU的支援加回來,所以還很難說。
總之,這篇文技術內容多了些,重點還是回到本次的CPU改版對於Apple來說根本就是小菜一碟,卻也是經過仔細思慮的商業決策。對於還在觀望 Intel 跟 ARM/AMD/nVidia 戰爭來說,這只是開第一槍,2020世代正式開始。
2022 更新:iPad 搭載 M1、Mac Studio(M1, M1 Ultra)
下放 M1 到 iPad Air 上可以拓展更大的市場氛圍,以後預期下一代 iPad (M1 Pro)、iPad Mini(M1)、iPad Air (M1 Max)。另外一個比較大的消息是整合晶片(SoC)到 Mac Stuio 產品線,比 Intel Alder Lake (Core i9-12900K) 以及 NVIDIA GeForce RTX 3090 (為何不是使用 3080 是重點)減少 190% 電力消耗,約 100W。不過,Alder Lake 常時消耗電力為 160W 比起 M1 Ultra 約 40W 電力少了近 120W 是觀察重點,真的可以省這麼多電力對 PC 廠商來說,還堅持 WinTel 路線就像是開大門讓 Apple 進來稱王。
此外,說明會沒寫但是特化 8K ProRes 最高達 18 條訊號源的整合設計,證明 M1 Ultra 未來將會搭載於 iMac 的可能性,或許那時會叫做 M1 Ultra Max 或是其他名字,但可以看到的將來可以視為 Apple 提供元宇宙或是自身 AR 裝置的前哨站:更多創作者等於更多內容,內容才是吸引使用者的關鍵,並非單純效能。