近期,RISC-V SIG 完成了 Arm NN 在 openEuler Embedded 系統的適配,于 2023 年 1 月合入系統構建工程代碼庫,經測試驗證可用,實現了神經網絡加速庫在 openEuler Embedded 嵌入式系統上的加速和優化。
系統構建工程下載地址:https://gitee.com/openeuler/yocto-meta-openeuler
支持 Arm NN 的 openEuler Embedded 系統已向社區開放
openEuler Embedded 是基于 openEuler 社區面向嵌入式場景的 Linux 版本,由于嵌入式系統應用受到多個因素的約束,如資源、功耗、多樣性等, 所以通過嵌入式處理器內核進行機器學習成為了技術發展需要,ARM 推出 Arm NN 加速庫就是解決方法之一,將機器學習運用到嵌入式系統中。提供高性能神經網絡推理能力,支持邊、端協同工作,提升資源利用率。
目標檢測是在嵌入式平臺上運行機器學習的工作負載之一
以目標檢測為示例,驗證 ArmNN 的推理加速效果:
模型:yolov3 tiny(FLOAT32 量化)
訓練數據:COCO
測試數據:640*480 H264 視頻
通過實驗證明,在精度損失可接受范圍內,Arm NN 加速可達到百倍的性能提升。如下圖所示,其中橫軸表示檢測圖片序號,縱軸表示推理耗時(單位:us):
注:musl-ref 是指基于 MuslC 的 Openeuler Embedded 且不做任何加速,musl-acc 是指基于的 Openeuler Embedded 且使能 ArmNN 的指令加速和優化。
為了適配 openEuler Embedded 系統, Arm NN 軟件需兼容 yocto-meta-openeuler,并在上做了很多準備工作,如 tensorflow 的適配,Compute Library 的適配,flatbuffers 的使用等。openEuler Embedded Arm NN 的構建代碼位于 meta-openeuler/recipes-arm 層上,社區開發者可根據需要自行構建 ArmNN 軟件。
Arm NN:融合主流神經網絡框架,為用戶提供高效的 AI 應用平臺
Arm NN SDK 是一套開源 Linux 軟件和工具,支持在高能效的設備上運行機器學習工作負載。它橋接了現有神經網絡框架與高能效的 Arm Cortex CPUs、Arm Mali GPU 或 Arm 機器學習處理器。
Arm NN 填補了現有 NN 框架和底層 IP 之間的空白。它可以幫助 TensorFlow 和 Caffe 等現有神經網絡框架實現高效轉換,并在 Arm Cortex CPU 和 Arm Mali GPU 上高效運行,無需修改。
主要優勢
更輕松地在嵌入式系統上運行 TensorFlow 和 Caffe;
Compute Library 內部的一流優化函數,讓用戶充分發揮底層平臺的強大性能;
無論面向何種內核類型,編程模式都是相同的;
現有軟件能夠自動利用新硬件特性;
作為開源軟件,能夠相對簡單地進行擴展,從而適應 Arm 合作伙伴的其他內核類型。
Arm NN 為 openEuler Embedded 系統帶來人工智能的新活力
Arm NN 為 openEuler Embedded 提供全系統的神經網絡優化方案,支持在高能效的設備上運行機器 學習工作負載。為了充分利用不同平臺的軟硬件特性,在 Linux 系統上提供 ARM CPU 上的神經網絡加速能力,使用硬件指令加速庫接口,使其面向目標硬件。目前,Arm NN 軟件庫在 openEuler Embedded 系統上的適配工作基本完成, RISC-V SIG 也將持續研發更多新功能,并移植最新的 openEuler Embedded 系統鏡像。為了加快 openEuler Embedded 系統人工智能應用場景落地,我們誠邀感興趣的朋友和測試志愿者加入并下載開發版鏡像,共同探索并解決可能存在的問題,推動 openEuler 人工智能開發生態的繁榮發展!
審核編輯 :李倩
-
嵌入式系統
+關注
關注
41文章
3663瀏覽量
130804 -
神經網絡
+關注
關注
42文章
4804瀏覽量
102617 -
openEuler
+關注
關注
2文章
325瀏覽量
6226
原文標題:Arm NN 成功適配 openEuler Embedded,提供高性能神經網絡推理能力
文章出處:【微信號:openEulercommunity,微信公眾號:openEuler】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
評論