簡體   English   中英

將 OpenCL 后端用於 openCV 4.6.0 的 dnn 模塊

[英]Using OpenCL backend for dnn module of openCV 4.6.0

我正在嘗試在 c++ 中運行 openCV 的 dnn 模塊我遇到了一個錯誤,我已經看過很多次了,但到目前為止還沒有找到正確的答案

OpenCV(ocl4dnn):考慮通過 OPENCV_OCL4DNN_CONFIG_PATH 參數指定 kernel 配置緩存目錄。 OpenCL 程序構建日志:dnn/dummy 狀態 -11:CL_BUILD_PROGRAM_FAILURE -cl-no-subgroup-ifp 處理命令行時出錯:不理解命令行參數“-cl-no-subgroup-ifp”!

我在 windows 上,使用 openCV 4.6.0,我在打開 OpenCL 標志的情況下自己編譯。 代碼在使用 CPU 目標時運行良好,但在從 DNN_TARGET_CPU 切換到 DNN_TARGET_OPENCL 時會拋出前面提到的塊。 它不會崩潰,但據我所知,它不使用 GPU 並且運行速度甚至比使用 CPU 選項時還要慢。

I was able to create and use a python version of the same code without any hitch (opencv-python 4.6.0 / same model / usecase) and it used my GPU just fine so it must be some configuration that is wrong on the c++ side .

任何人都可以有一個想法嗎? 謝謝

因此,在對不同硬件進行一些測試之后,OpenCL 實現似乎只適用於集成圖形芯片。 在兩台不同的機器上進行了測試,它與它們的集成 GPU 一起工作,在其他硬件(Nvidia 和 AMD 顯卡)上進行了測試,但它不起作用。 我認為我們必須等待更好的支持出現,尤其是對於不能選擇 CUDA 后端的 AMD 卡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM