# 通用顯示卡/AI晶片 推論效率測試流程 ## CUDA測試方法(RTX-4060) ### 利用GPU推論方法 #### 於 python 內安裝 onnxruntime-gpu 1. 依cuda, cudnn下載對應onnxruntime-gpu版本 版本對照:https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html ``` pip install onnxruntime-gpu==1.16.0 ``` 2. 於 cmd(命令提示字元) 依序輸入以下指令測試 ``` python import onnxruntime onnxruntime.get_device() onnxruntime.get_available_providers() ``` 如果輸出結果為以下則代表安裝成功 ``` 'GPU' ['TensorrtExecutionProvider', 'CUDAExecutionProvider', 'CPUExecutionProvider'] ``` ### 第一次程式測試 *註:第一次執行主要確認主機缺少資源 1. 用 VSCode 開啟提供之資料夾(qualcomm-ai-chip) >>File >> Open Folder 2. 開啟 Terminal  3. 依照 README 複製指令到Terminal 4. 如果有問題,依本地環境補足缺少的資源庫 ``` pip install (缺少的資源庫 EX:onnx) ``` 5. 其他問題可以查看「常見問題」 ### 程式測試與紀錄 #### 單執行緒的測試與紀錄 已將會用的指令打在README文件內 ##### STEP 1:開啟 Terminal 並分割 開啟VSCode後,Terminal >> New Terminal  點擊紅框圖示即可分割 Terminal  *註:左邊視窗用於開啟模型/auto_test ,右邊視窗用於開啟flask_test ##### STEP 2:於 README文件內找尋所需指令 (看推論的模型名稱) ##### STEP 3:點開 flask.test_py 修改程式 依據你要測試的模型選擇註解/取消註解的行數 *註:註解/取消註解的快捷鍵為CTRL + ? *注意:記得存檔!  *EX:上圖能夠測試leda_ae的單執行緒 ##### STEP 4:複製對應指令並貼到 Terminal 上執行 *註:先執行左邊視窗再執行右邊視窗 ##### STEP 5:紀錄資料於表格 執行成功的話會出現以下訊息  >>名稱對應表格內容 | avg_inference_time | avg_process_time | avg_FPS | |:------------------:|:------------------:|:-------:| | 推論秒數(ms) | 前後處理秒數(ms) | 推論FPS | #### 雙/多執行緒的測試與紀錄 已將會用的指令打在README文件內 ##### STEP 1:開啟 Terminal 並分割 開啟VSCode後,Terminal >> New Terminal  點擊紅框圖示即可分割 Terminal  *註:左邊視窗用於開啟模型/auto_test ,右邊視窗用於開啟flask_test ##### STEP 2:於 README文件內找尋所需指令 (看推論的模型名稱) ##### STEP 3:點開 flask.test2_py 修改程式 *由上往下修改 1. 依據你要測試的模型選擇註解/取消註解的行數  *EX:上圖能夠測試yolov8_od的雙/多執行緒 2. 修改 urls 對應你是雙/多執行緒  *EX:上圖能夠測試多執行緒 (如果是雙執行緒就是取消註解71行,註解掉74行) ##### STEP 4:點開 auto_test_py 修改程式 此程式協助我們同時多開模型,因此我們需要告訴他要開啟的模型及對應port號  *註:需要修改的是ports跟model,以此圖為例,開啟yolov8_od模型,ports為4000 ~ 4009  port號可以在頁面左邊flask資料夾內找到,例如leda_ae模型的port號就是5000 ~ 5009 ##### STEP 5:複製對應指令並貼到 Terminal 上執行 *註:先執行左邊視窗再執行右邊視窗 ##### STEP 6:紀錄資料於表格 執行成功的話會得到以下訊息  >>名稱對應表格內容 | Avg_inference_time | Process_time | avg_FPS | |:------------------:|:------------------:|:-------:| | 推論秒數(ms) | 前後處理秒數(ms) | 推論FPS | ## 常見問題 ### 1. 該主機未安裝 CUDA / cuDNN 程式能夠正常執行,但無法用GPU進行推論(出現紅字的錯誤)。 #### 檢查主機是否有安裝CUDA 方法1. 檢查資料夾內容 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA 方法2. 於cmd輸入以下指令 ``` nvcc -V ``` 如果有出現CUDA版本代表不是這個問題 #### 安裝CUDA 如果檢查後發現沒有資料,代表需要安裝CUDA才能推論 ##### STEP1:確認CUDA適用版本 到桌面上用滑鼠按右鍵,進入NVIDIA控制面板 >> 說明 >> 系統資訊 >> 元素 | |  | | -------- | -------- | (以右邊圖為例,CUDA適用最高版本為12.4.125) ##### STEP2:安裝CUDA 安裝前先確認是否需要更新驅動程式  提供 CUDA 11.8 安裝連結 下載路徑 : https://developer.nvidia.com/cuda-11-8-0-download-archive 依照主機系統選擇安裝即可 ##### STEP3:安裝cuDNN 下載cuDNN之前要先登入NVIDIA會員。然後依照需求下載版本。 下載路徑 : https://developer.nvidia.com/rdp/cudnn-archive 下載版本對應壓縮檔後,解壓縮可以看到三個資料夾  進入本機 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.x 位置後 將剛剛解壓縮的檔案,依資料夾名稱將裡面的檔案複製到CUDA資料夾內對應位置即可 bin -> bin , include -> include , lib -> lib (三個資料夾) ### 2. 找不到 zlibwapi.dll 檔案位置 程式報錯如下: ``` use CUDAExecutionProvider Could not locate zlibwapi.dll. Please make sure it is in your library path! ``` 這是因為 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin 內缺少了zlibwapi.dll導致 *註:網路上會建議你去Nvidia官網下載檔案,但現在官網已經不提供下載了* * STEP1:在 C:\Program Files 搜尋 zlibwapi.dll * STEP2:找到檔案位置後,複製一份至 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.x\bin 資料夾內 重新整理後,再執行一次程式應該就不會報錯了。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up