如何為 AI 應用選擇合適的 Arm 邊緣 AI 解決方案?

March 10, 2025

作者:Arm 物聯網事業部產品管理總監 Tim Menasveta

Arm Cortex-A320 是目前最小型的 Armv9-A 架構 CPU。由於該處理器的推出,開發人員現在能有更多選擇決定如何處理物聯網邊緣人工智慧(AI)工作負載。然而,面對多樣化的選擇,要確定適合特定 AI 應用的處理器,系統開發人員需要透過比較基於 Arm Cortex-AArm Cortex-MArm Ethos-U NPU 的裝置及其可能的搭配進行決策。除了成本的考量,開發人員還需瞭解各款處理器具備的 AI 功能,以及本身的專案可以透過何種軟體發展流程實現簡化。

在嵌入式裝置中實現高效率 AI 運算

近年來,嵌入式裝置中的 AI 運算效率突飛猛進。Arm 的 M 和 A 處理器架構的提升使得每單位能耗的機器學習(ML)推論效能呈數倍成長。特別是在 M 處理器架構上,基於 Armv8.1-M 架構的 Cortex-M52、Cortex-M55 和 Cortex-M85 CPU 整合了可編程設計的 Helium 向量擴展,進而解鎖了在微控制器級裝置上實現新 AI 應用場景的能力。此外,受惠於可擴展向量延伸指令集 (SVE2) 的導入,基於 Armv9 架構的 Cortex-A 處理器(如最新推出的 Cortex-A320)相較其前代產品進一步提升了 AI 效能。而 Ethos-U 系列 NPU 的最新一代產品 Ethos-U85 ,尤其在處理 Transformer 網路時效率更高。

如何選擇合適的硬體?

每種架構在不同方面各有優勢。在考慮哪款硬體最適合時,原始效能應與設計靈活性相權衡。此外,還需要將包括 CI/CD 要求在內的軟體發展流程納入考量。

效能

滿足所需的 AI 處理效能極為重要。Cortex-A 處理器本就是一款針對多種應用的可編程設計處理器,整合了 Neon/SVE2 向量引擎,目標在於加速神經網路和各種向量化程式碼,並能原生支援多種資料類型。而帶有 Helium 向量引擎的 Cortex-M 處理器具備相同特性,且更適用於成本和能耗相對有限的目標應用。相比之下,包含 Ethos-U85 在內的 Ethos-U NPU 則專為處理類神經網路運算子而設計,尤其還具備了量化的 8 位元整數資料權重的能力,對於可以對應到這些 NPU 硬體的網路運算子,其任務表現十分具有效率。

基於 Armv9 架構的最新一代 Cortex-A CPU 支援 BF16 等廣泛的資料類型。此外,導入的新矩陣乘法指令顯著提高了類神經網路的處理效能。關於如何透過 SVE2 實現矩陣乘法的詳細解釋,歡迎閱讀《Neon、SVE 和 SME 實現矩陣-矩陣乘法的比較》。

Cortex-M55 是首款整合 Helium 向量技術的 Cortex-M 處理器,此後推出的 Cortex-M85 也整合了這一技術。兩者都實現了雙節拍 (dual-beat)Helium 配置,每個時脈週期可執行多達八次的 8 位元整數乘積累加運算(MAC)操作。此外,Helium 還原生支援 FP16、FP32 等其他資料類型。

最後,在具有量化資料類型的模型上,具體來說是 INT8 權重,以及 INT8 或 INT16 啟動資料,Ethos-U NPU 可以非常高效率地處理類神經網路(NN)。這種設計雖會限制其適用的資料類型,但可提高 NPU 的執行效率。

評估處理器在實際 AI 工作負載中效能的方法之一,是分析其每種資料類型和每個時脈週期的理論 MAC 執行能力。由於神經網路處理使用大型資料集,因此記憶體存取效能是另一大關鍵因素。不過在本例中,我們著重於處理器密集 (processor-bound)效能,而非記憶體密集 (memory-bound)效能。

類神經網路處理速率通常受限於底層硬體的 MAC 操作速率。雖然實際的網路處理效能因網路結構而異,但下表所示的的理論 MAC 處理速率提供了硬體能力的指標。



MAC/核心/時鐘週期  資料類型  Int8  Int16  Int32  BF16  FP16  FP32 
Cortex-M55 與 Cortex-M85  N/A 
Ethos-U85 (128 MACs)  128  64  N/A  N/A  N/A  N/A 
Ethos-U85 (2048 MACs)  2048  1024  N/A  N/A  N/A  N/A 
Cortex-A320  32 


軟體

另外一個考慮的因素是每個硬體方案的軟體支援。Arm 為包括 Cortex-A、Cortex-M 和 Ethos-U 等在內的各類 AI 硬體解決方案提供全面的開源運行時支援軟體。Arm 為各種 ML 框架和運行時提供硬體加速支援,包括 PyTorch、ExecuTorch、Llama.cpp、TensorFlow 和 LiteRT(透過 XNNPACK)。任何 ML 框架都可透過優化,進而充分利用 Arm 的 AI 特性。在 Arm 處理器上執行的運行時可利用 CMSIS-NN(針對 Cortex-M/Helium)和 Arm Compute Library 或 Arm KleidiAI(針對 Neon/SVE2 中的 INT8 和 BF16)等軟體加速庫。Vela 編譯器是一個透過優化模型來實現高效部署的離線工具,可在 Ethos-U 上進一步調修可執行二進位檔案,進而實現更卓越的硬體效能。

何時使用 Ethos-U?

一些具有明確定義的 AI 工作負載的邊緣 AI 應用可以透過將神經網路處理卸載到專用 NPU 上,進而釋放主處理器的運算密集型任務,並因此受惠。如前所述,Ethos-U NPU 在處理具有量化的 8 位元整數權重的類神經網路時非常有效率。Transformer 網路特別適合在 Ethos-U85 上運行。然而,Ethos-U85 NPU 需由一個主處理器(可以是 Cortex-M 或 Cortex-A)進行驅動。

主處理器與 Ethos-U 間可以有多種配置方式。Ethos-U 可由像 Cortex-M55 等啟用 Helium 的 Cortex-M 處理器驅動使用。目前市面上已有這種系統級晶片(SoC)配置的範例。近期,在小型語言模型 (SLM)上運行生成式 AI 工作負載越來越受到業界重視。Ethos-U 與啟用 Helium 的Cortex-M處理器相結合,是此類應用的最佳選擇。

此外,還有基於 Cortex-A 處理器的 SoC 整合了基於 Cortex-M 核心的 ML 島與 Ethos-U。這類 SoC 通常適合運行 Linux 等功能豐富的作業系統,並支援更大、更靈活的記憶體系統。Cortex-M CPU 擁有 32 位元可定址記憶體位址空間,能實現直接記憶體位址對應,而像 Cortex-A320 等更新款的 Cortex-A 處理器則具有 40 位元記憶體可定址空間,還可以透過記憶體管理單元 (MMU)的虛擬記憶體定址。

隨著大型語言模型 (LLM) 的執行逐漸轉向邊緣 AI 裝置,擁有更大和更靈活的記憶體系統可以簡化較大參數規模(例如大於 10 億個參數的 LLM)模型的執行。Cortex-M 和 Ethos-U85 的組合很適合於越來越受到歡迎的小型語言模型。Cortex-M 處理器具有 4GB 的定址空間,並保留了其中一些空間用於系統功能。隨著 LLM 模型規模的成長,具有更大和更靈活記憶體的 Cortex-A 系統將變得相當重要。

Arm 近期又宣佈了另一種配置方式,名為「直接驅動 (direct drive)」,即 Cortex-A 處理器直接驅動 Ethos-U NPU。這種配置無需專門的 Cortex-M 作為「驅動」處理器。Ethos-U85 的 Linux 驅動程式可在 Cortex-A 主控制器上運行。


利用 Cortex-A320 滿足邊緣裝置的生成式 AI 需求

邊緣 AI 系統開發人員現在有更多的選擇來優化物聯網中最靠近邊緣端的 AI。無論選擇 Cortex-M、Cortex-A 還是 Ethos-U 加速系統,每種選擇都可滿足不同的需求。Cortex-A320 處理器能夠直接驅動 Ethos-U85,這讓設計人員獲得了更多的靈活性。做為 Arm 最小型、最高效率的 Armv9-A 處理器,Cortex-A320 在提高邊緣端 AI 效率的同時,也能適應嵌入式系統中生成式 AI 演進的需求。歡迎點擊此處,瞭解 Arm 變革性的邊緣端 AI 解決方案如何塑造物聯網的未來!

 

關於 Arm

Arm 是業界效能最高且最節能的運算平台,其無可比擬的應用範疇觸及全球所有連網使用者。為因應全球對運算永無止境的需求,Arm 提供先進的解決方案,使全球領先的科技公司得以釋放前所未有的 AI 體驗與功能。透過與全球最大的運算生態系及 2,000 萬名軟體開發人員的共同努力,我們正在 Arm 平台上建構 AI 的未來。


所有資訊都「依目前情況」提供,且並不帶保證或代表性。此文件可以自由分享,但不得修改且必須註明出處。Arm 是 Arm Limited(或其子公司與附屬機構)的註冊商標。所有品牌或產品名稱均為所屬公司之財產。© 1995-2025 Arm Limited.