使用Python和PYNQ,以最小的工作量啟動并運行Xilinx Vitis AI硬件加速推理
下面的說明記錄了一種新的方法,可以立即開始使用Xilinx Vitis AI v2.5硬件加速機器學習推理。它還使Python能夠控制和執(zhí)行Vitis AI Xilinx深度學習處理單元(DPU)?,F(xiàn)在還支持VART api。
在ZUBoard 1CG, Ultra96 (v1和v2), ZCU104, ZCU208, ZCU111和其他邊緣平臺上開始使用Vitis AI,只需幾個簡單的步驟。對于高級用戶來說,與標準的PetaLinux方法相比,使用Vitis AI與PYNQ有一些好處:
?在試用之前,不需要安裝初始的Xilinx工具,也不需要下載任何docker映像!
?您可以在不同的推理模型之間切換!
?您可以使用Python(或C/ c++)控制DPU并與之交互!
?您不必每次都重新構(gòu)建SD圖像來運行不同的推理模型!
雖然只需要花費少量的本地編譯時間,但它比之前任何已知的為Xilinx Vitis AI組裝合適平臺的技術(shù)都要短得多。
使用包含的PYNQ Vitis AI Jupyter notebook,您將立即能夠使用以下推理加速器:
?《盜夢空間》
?Resnet
?經(jīng)典MNIST
?Yolo
?(您也可以創(chuàng)建自己的自定義推理模型)
所有在python或C/ c++的控制下,如果需要!
開源的PYNQ框架總是能夠輕松地與AARCH64 Ubuntu應用程序集成?,F(xiàn)在硬件加速Vitis AI與PYNQ !
還有更好的呢!賽靈思AI模型動物園中的許多其他免費預訓練的Caffe、Tensorflow、Darknet和PyTorch Vitis AI模型現(xiàn)在也可以很容易地移植到支持PYNQ的主板上運行。您甚至可以使用賽靈思Vitis AI構(gòu)建自己的自定義推理模型!
警告:如果遵循這些說明,一些PYNQ Python庫和其他庫可能會更新。如果您依賴于較舊的PYNQ或Xilinx AI DPU版本,您可能需要先備份現(xiàn)有的PYNQ映像,或者在新安裝的最新版本PYNQ上嘗試這樣做。
在開始之前,請在開發(fā)板上安裝正確版本的PYNQ軟件
您的PYNQ板應該運行最新版本的PYNQ!你還在等什么:開始吧!
對于已經(jīng)運行PYNQ的兼容板,請按照以下步驟操作!
步驟1 -訪問PYNQ Jupyter命令控制臺
隨著PYNQ的啟動和運行,主板本身通過有線局域網(wǎng)或Wifi連接到互聯(lián)網(wǎng),從一臺可以訪問主板所在局域網(wǎng)的PC上,使用web瀏覽器(最好是Firefox、Chrome或Safari)并登錄到PYNQ Jupyter服務器。然后在web瀏覽器中打開一個Jupyter命令根控制臺選項卡。
提示:您可以通過在PC web瀏覽器中輸入您的WLAN或LAN上的PYNQ板的IP地址來登錄在PYNQ板上運行的Jupyter服務器。對于下面的屏幕截圖,這是使用通過USB OTG連接到PC的Ultra96完成的。Ultra96還附帶了一個USB轉(zhuǎn)以太網(wǎng)適配器,為Ultra96提供互聯(lián)網(wǎng)服務。
提醒:在開始之前,您需要找到自己的板的IP地址,并為其提供互聯(lián)網(wǎng)連接:
系統(tǒng)可能會要求您輸入密碼,密碼都是小寫的:xilinx
輸入密碼后,您應該看到(本例顯示的是一臺Ultra96):
通過web瀏覽器登錄到Jupyter筆記本服務器后,使用鼠標單擊New按鈕(上面用紅色圈出)并選擇創(chuàng)建一個新的根控制臺終端:
這將打開一個具有root權(quán)限的命令控制臺,在這個控制臺中,您將很快輸入安裝命令:
步驟2 -安裝Vitis AI
注意:為了這個工作你的開發(fā)板必須有一個互聯(lián)網(wǎng)連接!(如果你不知道怎么做,請參閱下面的一些提示和說明)。我不建議使用U96 v2 wifi,因為它很慢。我建議使用板載以太網(wǎng)或USB到以太網(wǎng)適配器用于U96 v2和任何其他選擇以太網(wǎng)的板。
這一步最難的部分是要有耐心!!這一步將直接在PYNQ板上編譯Vitis AI和Xilinx XRT驅(qū)動程序和庫。要花半個小時到一整個小時。這取決于你SD卡的速度。這是值得等待的,只需要做一次!
如下所示輸入命令:
步驟3 -安裝示例Jupyter Notebooks
在命令控制臺中輸入以下內(nèi)容,確保輸入空格和最后一個'。,如下所示:
您現(xiàn)在可以關(guān)閉或退出終端!
步驟4 -學習示例筆記本
在web瀏覽器中返回Jupyter(或Jupyter Lab)并在筆記本文件夾下找到新安裝的筆記本。以下是其中的一些例子:
本文編譯自hackster.io





