0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

簡單三步在Windows上調(diào)用低功耗NPU部署AI模型

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 2024-02-22 17:17 ? 次閱讀

相信很多小伙伴都已經(jīng)知道,在最新一代的英特爾 酷睿 Ultra 移動端處理中已經(jīng)集成了被稱為 NPU 的神經(jīng)網(wǎng)絡加速處理器,以提供低功耗的 AI 算力,特別適合于 PC 端需要長時間穩(wěn)定運行的 AI 輔助功能,例如會議聊天軟件中的自動摳像,或是畫面超分辨率等應用。而 OpenVINO 工具套件也在第一時間對 NPU 進行了適配,接下來就讓我們一起看一下如何在英特爾 酷睿 Ultra 處理器上搭建基礎環(huán)境,并調(diào)用 NPU 進行模型推理任務。

NPU 驅(qū)動安裝

首先我們需要確保是否安裝了最新版的 NPU 驅(qū)動,可以通過 Windows 任務管理調(diào)出當前 NPU 驅(qū)動版本信息

7f01b5f0-d162-11ee-a297-92fbcf53809c.jpg

圖:NPU 在 Windows 任務管理器中顯示驅(qū)動版本

查詢當前最新的 NPU 驅(qū)動版本:

https://www.intel.com/content/www/us/en/download/794734/intel-npu-driver-windows.html

7f1ff6a0-d162-11ee-a297-92fbcf53809c.png

圖:NPU 驅(qū)動下載頁面

如果想更新或是重裝 NPU 驅(qū)動,可以參考以下指引下載并安裝驅(qū)動:

https://docs.openvino.ai/2023.3/openvino_docs_install_guides_configurations_for_intel_npu.html

OpenVINO 的下載和安裝

由于目前 NPU Plugin 還沒有被集成在 OpenVINO 的 PyPI 安裝包中,因此我們需要通過下載 OpenVINO runtime 壓縮包的方式進行安裝。

7f35a298-d162-11ee-a297-92fbcf53809c.png

圖:OpenVINO 下載頁面

整個安裝過程非常簡單,只需將壓縮包解壓到在本地路徑下即可。具體方法可以參考上圖標紅處的安裝說明。

7f5bbdd4-d162-11ee-a297-92fbcf53809c.png

圖:將壓縮包解壓至本地路徑

Python 環(huán)境配置

通過執(zhí)行壓縮包中的 setupvars.bat 環(huán)境配置腳本,我們便可以直接在 Python 環(huán)境下加載 OpenVINO runtime 和 NPU Plugin 環(huán)境。同時利用 OpenVINO 的 Python API 指令,我們可以快速驗證 NPU 是否可以被正常調(diào)用。

7fbe5232-d162-11ee-a297-92fbcf53809c.jpg

圖:Python 環(huán)境中驗證 NPU 調(diào)用

C++ 環(huán)境配置

不同于 Python,Windows 上的 C++ 應用需要依賴于 CMake 或者是 Visual Studio 的環(huán)境下調(diào)試,因此這里我們需要簡單配置下 OpenVINO 庫的路徑。下面以 Visual Studio 中新建項目的屬性配置頁面為例。

7fd6349c-d162-11ee-a297-92fbcf53809c.png

圖:配置 OpenVINO runtime 頭文件路徑

7ff36080-d162-11ee-a297-92fbcf53809c.png

圖:配置 OpenVINO runtime 動態(tài)庫路徑

800aead4-d162-11ee-a297-92fbcf53809c.png

圖:配置 OpenVINO runtime 及 frontednd 靜態(tài)庫路徑

80332d0a-d162-11ee-a297-92fbcf53809c.png

圖:在 Windows 本地添加 OpenVINO 環(huán)境變量路徑

當完成 Visual Studio 項目屬性配置后,我們可以通過調(diào)試以下示例代碼,測試 NPU 是否可以被檢測及調(diào)用。

#include 
#include 


int main(int argc, char* argv[]) {


  // -------- Get OpenVINO runtime version --------
  std::cout << ov::get_openvino_version() << std::endl;


 ? ?// -------- Step 1. Initialize OpenVINO Runtime Core --------
 ? ?ov::Core core;


 ? ?// -------- Step 2. Get list of available devices --------
 ? ?std::vector availableDevices = core.get_available_devices();


  // -------- Step 3. Query and print supported metrics and config keys --------
  std::cout << "available devices: " << std::endl;
 ? ?for (auto&& device : availableDevices) {
 ? ? ? ?std::cout << device << std::endl;
 ? ?}
}

805d6408-d162-11ee-a297-92fbcf53809c.png

圖:VS 環(huán)境中驗證 NPU 調(diào)用

測試效果

當完成 NPU 安裝后,我們可以通過 OpenVINO notebooks 中提供的示例,簡單測試下 NPU 的性能。這個示例會通過以下 Python 代碼來將模型部署在 NPU 上。

compiled_model = core.compile_model("model.xml", "NPU")

8077ab42-d162-11ee-a297-92fbcf53809c.png

圖:實時人體關鍵點演示效果

可以看到 NPU 在運行實時人體關鍵點檢測模型時的效果和速度還是非常不錯的,達到了 90FPS 的吞吐量,同時推理任務幾乎也沒有占用 CPU 額外的資源,真正做到了在提供高算力的同時,減輕 CPU 和 GPU 的任務負載。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡

    關注

    42

    文章

    4726

    瀏覽量

    100311
  • python
    +關注

    關注

    54

    文章

    4758

    瀏覽量

    84289
  • 加速處理器
    +關注

    關注

    0

    文章

    8

    瀏覽量

    6434
  • NPU
    NPU
    +關注

    關注

    2

    文章

    252

    瀏覽量

    18482

原文標題:簡單三步在 Windows 上調(diào)用低功耗 NPU 部署 AI 模型 | 開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    使用OpenVINO 2024.4算力魔方上部署Llama-3.2-1B-Instruct模型

    前面我們分享了《三步完成Llama3算力魔方的本地量化和部署》。2024年9月25日,Meta又發(fā)布了Llama3.2:一個多語言大型語言模型(LLMs)的集合。
    的頭像 發(fā)表于 10-12 09:39 ?253次閱讀
    使用OpenVINO 2024.4<b class='flag-5'>在</b>算力魔方上<b class='flag-5'>部署</b>Llama-3.2-1B-Instruct<b class='flag-5'>模型</b>

    NVIDIA NIM助力企業(yè)高效部署生成式AI模型

    Canonical、Nutanix 和 Red Hat 等廠商的開源 Kubernetes 平臺集成了 NVIDIA NIM,將允許用戶通過 API 調(diào)用來大規(guī)模地部署大語言模型
    的頭像 發(fā)表于 10-10 09:49 ?275次閱讀

    行代碼完成生成式AI部署

    OpenVINO2024.2版本跟之前版本最大的不同是OpenVINO2024.2分為兩個安裝包分別是基礎包與生成式AI支持包,新發(fā)布的GenAI開發(fā)包支持C++與Python語言接口調(diào)用,支持多種
    的頭像 發(fā)表于 08-30 16:49 ?324次閱讀
    <b class='flag-5'>三</b>行代碼完成生成式<b class='flag-5'>AI</b><b class='flag-5'>部署</b>

    利用恩智浦云實驗室部署AI模型

    如今,人工智能(AI)非常火爆,這個風口該如何把握?作為一個電子工程師,和AI最主要的交集應該就是邊緣計算了,具體來講,就是一些性能、功耗以及價格相對較低的嵌入式平臺上
    的頭像 發(fā)表于 08-02 11:46 ?2570次閱讀
    利用恩智浦云實驗室<b class='flag-5'>部署</b><b class='flag-5'>AI</b><b class='flag-5'>模型</b>

    基于RK3588的NPU案例分享!6T是真的強!

    ,使用RKNN-Toolkit2將預訓練模型轉(zhuǎn)換為RK3588 NPU可使用的RKNN模型。這通常涉及到將模型中的計算圖進行適當?shù)男薷暮蛢?yōu)化,以適應
    發(fā)表于 07-17 10:55

    AI PC引發(fā)的NPU大戰(zhàn)?英特爾:僅30%開發(fā)者選擇NPU

    隨著COMPUTEX 2024的日益臨近,關于人工智能(AI)個人計算機(PC)的話題開始變得愈發(fā)熱門和受關注。據(jù)微軟公司近期發(fā)布的相關技術規(guī)范要求,所有運行Windows操作系統(tǒng)的AI PC必須配備本地運行Copilot的功能
    的頭像 發(fā)表于 06-03 17:24 ?794次閱讀

    低功耗模型主板:ROC-RK3576-PC

    采用八核64位AIOT處理器RK3576,采用大小核構架(4×A72+4×A53),采用先進制程工藝,高性能低功耗,內(nèi)置ARMMaliG52MC3GPU,集成6TOPS算力NPU,支持
    的頭像 發(fā)表于 05-30 08:02 ?835次閱讀
    <b class='flag-5'>低功耗</b>大<b class='flag-5'>模型</b>主板:ROC-RK3576-PC

    實測NPU“空轉(zhuǎn)”,AI PC首個落地應用只調(diào)用GPU?

    AI PC的一大特征是傳統(tǒng)PC的CPU+GPU基礎上,增加NPU加強AI 算力。不過有意思的是,最近某品牌PC機型上的AI助手率先落地,支
    的頭像 發(fā)表于 05-22 00:16 ?3012次閱讀

    基于 Renesas 的 RA8M1 實現(xiàn) AI 和 ML 部署

    新的工作負載會增加功耗,盡管要求設計人員盡量降低功耗并加快產(chǎn)品上市時間。 設計人員需要一個計算選項,既能保持 MCU 的效率,又能增加專為低功耗應用定制的高性能功能。這一選項還應保留與傳統(tǒng) MCU 相關的
    的頭像 發(fā)表于 04-23 15:04 ?1084次閱讀
    基于 Renesas 的 RA8M1 實現(xiàn) <b class='flag-5'>AI</b> 和 ML <b class='flag-5'>部署</b>

    簡單三步使用OpenVINO?搞定ChatGLM3的本地部署

    英特爾 OpenVINO? 工具套件是一款開源 AI 推理優(yōu)化部署的工具套件,可幫助開發(fā)人員和企業(yè)加速生成式人工智能 (AIGC)、大語言模型、計算機視覺和自然語言處理等 AI 工作負
    的頭像 發(fā)表于 04-03 18:18 ?1926次閱讀
    <b class='flag-5'>簡單</b><b class='flag-5'>三步</b>使用OpenVINO?搞定ChatGLM3的本地<b class='flag-5'>部署</b>

    使用CUBEAI部署tflite模型到STM32F0中,模型創(chuàng)建失敗怎么解決?

    看到CUBE_AI已經(jīng)支持到STM32F0系列芯片,就想拿來入門嵌入式AI。 生成的模型很小,是可以部署到F0上的,但是一直無法創(chuàng)建成功。 查閱CUBE
    發(fā)表于 03-15 08:10

    三步完成英特爾獨立顯卡上量化和部署ChatGLM3-6B模型

    ChatGLM3 是智譜 AI 和清華大學 KEG 實驗室聯(lián)合發(fā)布的新一代對話預訓練模型。ChatGLM3-6B 是 ChatGLM3 系列中的開源模型,填寫問卷進行登記后亦允許免費
    的頭像 發(fā)表于 01-11 18:04 ?1469次閱讀
    <b class='flag-5'>三步</b>完成<b class='flag-5'>在</b>英特爾獨立顯卡上量化和<b class='flag-5'>部署</b>ChatGLM3-6B<b class='flag-5'>模型</b>

    ADI超低功耗人工智能(AI)MCU MAX78002介紹

    、更快的CNN加速器,更高的模型維度。本視頻將介紹邊緣AI的概念、ADI邊緣AI低功耗微處理器的架構、以及MAX78002的主要參數(shù)。
    的頭像 發(fā)表于 12-15 12:36 ?1098次閱讀

    【愛芯派 Pro 開發(fā)板試用體驗】模型部署(以mobilenetV2為例)

    格式,如這里就是axmodel 3、移動端的linux系統(tǒng)安裝好推理引擎 4、使用推理引擎運行 下面一步步的細說,并會挑一些覺得有意思的細節(jié)說說。以一個簡單的mobilenetV2為例. 2、訓練
    發(fā)表于 12-10 16:34

    python調(diào)用windows命令

    Python是一種強大的編程語言,可以用于開發(fā)各種不同類型的應用程序。其中一個常見的用途是使用Python調(diào)用Windows命令來執(zhí)行特定的任務。本文中,我們將詳細討論如何使用Python調(diào)
    的頭像 發(fā)表于 11-29 14:34 ?909次閱讀