作者:Arm 工程部首席軟件工程師 Gian Marco Iodice
在持續快速發展的人工智能 (AI) 時代,Arm 堅定地支持全球數百萬開發者,確保他們能夠獲得 AI 創新開發所需的性能、工具和軟件庫,從而順利打造下一波令人驚嘆的 AI 體驗。為此,Arm 于近日推出了 Arm Kleidi,這是一項廣泛的軟件和軟件社區參與計劃,旨在加速 AI 發展。其中的第一個舉措是推出面向熱門 AI 框架的 Arm Kleidi 軟件庫。這使開發者可以直接取得 Arm CPU 的出色 AI 功能,而如今全球從云端到邊緣側的大多數 AI 推理工作負載都在這些 Arm CPU 上運行。
Arm KleidiAI
我們所推出的開創性軟件庫 Arm KleidiAI,旨在提升 AI 在 Arm CPU 上的性能。KleidiAI 的命名來自于希臘語“kleidi”,意為“鑰匙”,象征其在提升 Arm CPU 上 AI 性能方面發揮著關鍵作用。在開發該項目的過程中,我們認真考慮了框架開發者的需求,致力于提供一個緊湊、有影響力且可輕松適用于各類 AI 框架的開源庫。
盡管 KleidiAI 仍處于早期階段,但已幫助 Google MediaPipe 和 XNNPACK 團隊將開源大語言模型 (LLM) Gemma 的性能提高了 25%。
我們的目標不僅僅是將 KleidiAI 打造成 AI 優化例程的集合,更是希望該項目能成為學習 Arm CPU 上軟件優化最佳實踐的知識庫。因此,我們誠摯邀請開發者立即加入這激動人心的學習之旅,并提供反饋意見,共同改進我們的產品。
接下來,我將詳細探討 KleidiAI 的初始功能。點擊閱讀原文,可獲取一個關鍵函數的分步運行指南,該函數用于加速 Gemma LLM 的 4 位整數矩陣乘法例程。
微內核
首先介紹 KleidiAI 庫中提供的微內核。KleidiAI 是面向 AI 框架開發者的開源庫,可以為 Arm CPU 提供經過優化的性能關鍵型例程。這些例程是以高性能加速給定算子所需的近乎最小規模的軟件,通常稱為微內核(或 uKernel)。
以通過 Winograd 算法執行的 2D 卷積算子為例,該計算涉及四個主要運算:
Winograd 輸入轉換
Winograd 濾波轉換
矩陣乘法
Winograd 輸出轉換
上述每個運算都是一個微內核。但為什么上述運算不叫“內核”或“函數”呢?如下圖所示,微內核一詞強調了其處理輸出張量部分的能力:
圖:微內核案例
如上圖中的兩個案例所示,微內核僅能處理整個輸出的一部分。這一設計決策支持細粒度優化,例如,提供高效串聯多個微內核的靈活性,從而進一步提升 AI 框架的性能。
微內核可用于各種 Arm 架構、技術和計算參數。例如,在 matmul_clamp_f32_qai8dxp_qsi4cxp 文件夾中,來看下具有按通道量化功能的 Int4 矩陣乘法例程:
該文件夾包含用于 4 位整數矩陣乘法的關鍵 LLM 微內核。在該文件夾中可以看到,使用 Arm 點積或 i8mm 擴展優化的微內核使用 Neon 匯編來盡可能提高效率,以及在處理的最小輸出塊方面有不同的多種變體。
文件夾中的每個 .c 和 .h 文件對均代表一種微內核變體。這些變體的計算參數(如塊大小)、使用的 Arm 技術(如 Arm Neon)和特定 Arm 架構特性(如 FEAT_DotProd)各有不同。
所有微內核變體共享相同的功能和界面,從而保持一致性。一致性是易于采用的關鍵因素,接下來我將談談我們還采取了哪些其他措施來幫助框架開發者輕松集成微內核。
易于采用
我們深知,在 AI 框架中集成新庫時面臨著諸多挑戰,如庫的大小、外部依賴關系和文檔。因此,我們努力收集合作伙伴的反饋意見,并將其納入我們的未來計劃之中,盡可能幫助開發者順暢完成集成。
為了實現這一點,KleidiAI 的設計原則是讓框架開發者能夠輕松集成所需的微內核。只需拉取相應的 .c 和 .h 文件,以及所有微內核共享的通用頭文件 (kai_common.h),即可集成每個微內核。我們稱之為“三文件微內核依賴” (Three-file Micro-kernel Dependency)。這樣我們便實現了這一目標。
您可以參考我們準備的相關指南,學習如何使用微內核。該指南探討了 4 位整數矩陣乘法微內核的使用,這有助于提高 Gemma LLM 的性能。
-
ARM
+關注
關注
134文章
9094瀏覽量
367541 -
AI
+關注
關注
87文章
30887瀏覽量
269068 -
微內核
+關注
關注
0文章
58瀏覽量
13431 -
軟件庫
+關注
關注
0文章
15瀏覽量
7765
原文標題:Arm KleidiAI 助力 AI 框架性能提升
文章出處:【微信號:Arm社區,微信公眾號:Arm社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論