Arm 在 10 年前宣布 Armv8 指令集,把 Arm 架構自 32 位元帶領到 64 位元的世界,雖然在 Armv8 之前,當時仍能與 Arm 抗衡的 MIPS 更早一步跨入 64 位元指令集領域,不過憑藉著在 iOS 與 Android 智慧手機的生態圈,一步一步從嵌入式、行動運算跨足 PC 運算、資料中心與超算,而 Arm 藉由 2021 年的 Vision Day 年度活動,一舉宣布第二世代的 64 位元指令集 Armv9 ,以 Armv8 指令集為基礎進一步革新,也為 Arm 架構生態圈帶來更多可能性。
▲ big.LITTLE 顛覆傳統 CPU 設計理念
在十年以來, Armv8 架構也歷經許多重要的變革,包括在第一世代產品將大小核 big.LITTLE 理念強化,以 Cortex-A53 、 Cortex-A57 劃分高效能核心與節能核心的差異,同時 2017 年更進一步將 big.LITTLE 強化,推出能夠在單一 Cluster 容納最多 4 大 4 小的 DynamIQ 技術,而後續補定版本 Armv8.2 更使 Arm 架構具備模擬 x86 的能力,同時為了滿足高效能運算需求,還宣布全新的 Arm Neoverse 超算微架構,自 Cortex-A 家族再度針對更高運算需求提供不同的分支,更以能提供 8 大核單一 Cluster 的 Cortex-A78C 微架構。
▲ DynamIQ 使單一 Cluster 納入更多的核心,提高大小核工作轉換的效率
而 Arm 在這 10 年也進一步將架構領域擴展到 10 年前無法想像的境界,除了幾乎成為當前手機生態的唯一指令集以外, PC 領域也在蘋果 M1 一舉展現其能力足以擔當重任,而運算領域更從原本以資料管理為主,由富士通 FX64 晶片成為當今全球超算系統王者,顛覆過往由 AMD 與 Intel 的 x86 以及 IBM Power 霸佔的超算市場, NVIDIA 亦在宣布收購 Arm 前就宣布將提供 Arm 架構能夠與 CUDA GPU 連接的異構運算。
Armv9 指令集如同 Arm 一貫的指令集傳承,仍能相容當前 Armv8 甚至 Armv7 指令集(但基本上於運算領域近乎全面 64 位元化,相容 Armv7 指令集的意義相對不大),不過 Arm 在昨天的發表活動也提到由於 Armv9 將加入更多的新功能,未來也有特定應用將會應用到這些 Armv9 指令集的新功能。
在 Vision Day 的發表活動上, Armv9 指令集主要的變革在於安全性與針對更複雜層級運算進行強化,安全性部分原本就是近年主要的議題,尤其隨著物聯網、邊際運算需求提高,各家晶片商不無持續強化自硬體到軟體的安全防護, Armv9 架構仍將自嵌入式涵蓋到消費級與超算領域,自然不能忽視安全性的強化。
▲ A64FX 展現 Arm 跨足 HPC 領域的可能性
不過更值得注意的是 Armv9 將先前 Arm 與富士通合作的成果 SVE 指令集進行擴張, Armv9 將支援更先進的 SVE2 指令集,使晶片規劃能夠自原本 128bit 的向量加速擴張到最大 2,048bit ,進一步提升 Armv9 於高階運算的可能性,這也對於 Armv9 在提供消費級運算設備至超算都能有更顯著的提升。
另外在發表會後也提到, Arm 再與未來的準東家 NVIDIA 合作,將使 Armv9 指令集可支援 CUDA GPU 進行加速,對於未來 Arm 架構無論自工作站到超算都會產生明顯的影響,畢竟以當前在運算領域的晶片設計,多半是將相同功能的架構規劃在同一顆晶片上,而非如智慧手機整合 CPU 、 GPU 與加速器,故縱使 Arm 架構相對傳統 x86 容易實現大量 CPU 核心,但在特定領域仍須搭配加速器使用,尤其當前全球的 AI 加速技術以 NVIDIA 的 CUDA GPU 加速為主流大宗, Arm 與 NVIDIA 合作深化 Armv9 對 CUDA 技術的支援是有相當大的意義的。
可預見的是除了崛起的 AMD Epyc 以外,下一代基於 Arm Neoverse 平台與 Armv9 指令集的系統將會在超算帶來許多變化,尤其富士通 FX64 一舉令外界看到 Arm 架構在超算的潛力,而 Arm 架構的設計彈性又是相對 x86 處理器有優勢的地方,單晶片的處理器核心數量、記憶體搭配、通道設計等都可依照平台需求加以客製化,大型服務商像是 Google 、微軟、亞馬遜等甚至有能力依照需求規劃符合需求的客製化 CPU ,憑藉 SVE2 指令集的導入,搭配如 PCIe 5.0 一類的新一代通道技術,甫以 NVIDIA 加持之下使 Arm CPU 與 NVIDIA GPU 的協作模式,應該也會吸引更多超算系統採納。
▲ Arm 是蘋果少數不敢貿然過河拆橋的長期夥伴
此外,雖然蘋果並未列在 Armv9 新聞稿的合作夥伴證言上,且蘋果也有多次過河拆橋的前例,但以現況而言,蘋果短期內是難以棄捨 Arm 指令集的,因為 CPU 架構與專利錯綜複雜,固然蘋果有能力開發微架構,但作為最基礎的指令集難以另起爐灶,尤其蘋果宣布將邁向全面 Apple Silicon 的世代,就更難脫離作為基礎的 Arm 指令集。
▲ Armv9 指令集或許有助蘋果規劃超越 Intel Xeon 效能的工作站級 CPU
加入 SVE2 指令集的 Armv9 指令集會對蘋果的 Apple Silicon 產生甚麼影響也相當值得關注,這也意味著蘋果在未來冠上 Pro 的 Mac Pro 工作站產品線能夠取得更高的運算性能,畢竟當前的 Apple M1 仍僅達主流級筆電的效能水準,雖然帳面上超越以往合作夥伴 Intel 的數據規格,不過若用於更進一步的工作站等級應用,目前的效能顯然不足。
筆者推估,若要用於取代現行的 Mac Pro 產品,蘋果勢必需要規劃一款相近於 Arm 超算平台 Neoverse 層級的高階 CPU ,否則以當前 Cortex-A 相近層級的架構同時把所有架構進行 SoC 進行規劃,可能會重演上一世代骨灰罈造型 Mac Pro 的性能悲劇,此外,雖然蘋果已有多年開發 iGPU 設計的經驗,但若以工作站的規模,還未有獨立 GPU 開發經驗的蘋果能否解決如專業影像、 3D 內容創作對於高效能 GPU 的問題也令人好奇,或許短時間內可能會尋求外援以獨立 GPU 的方式提供視覺相關的效能。
▲若要能與當前的 Mac Pro 用途相近,蘋果應該仍會搭配獨立 GPU
以 Mac Pro 作為專業工作站的定位,可以自當前世代的設計進行推估,蘋果可能未來有兩種做法,其一是採取更小的尺寸、更低的能耗達到比當前略高的效能,其二則是在與目前相近的尺寸提供更優秀的效能,不過無論是哪種作法,筆者認為工作站設計帶來的空間優勢,使蘋果會選擇規劃準伺服器等級的純 CPU 設計,而非目前蘋果 M1 完整機能的 SoC ,並在圖形處理以另一顆獨立 GPU 實現。
▲與其期待擁有 CPU 與 GPU 的 AMD 與 Intel 對 NVIDIA GPU 完全敞開大門, NVIDIA 不如攜手 Arm 生態鏈深化異構加速運算
對於整體 Arm 生態圈,筆者認為 Cortex-R 即時處理器與 Cortex-M 嵌入式處理器可藉由強化的安全性、 AI 取得更高的安全性、節能性與 AI 加速;至於運算領域的應用,則能在新架構強化的運算機能與逐年提高的性能,協助 Arm 架構能進一步擴大運算級與超算的涵蓋層級,尤其深化與 NVIDIA 的合作關係之下,應該可進一步透過更緊密的異構方式提高執行效率,例如實現更直接的 CPU 與 GPU 多向溝通、記憶體共享等模式,還有與 NVIDIA Mellanox 高速連接網路,比起等待 Intel 或 AMD 願意對 NVIDIA 敞開大門會更為實際。