【CUDA开发】 Check failed: error == cudaSuccess (8 vs. 0) invalid device function
最近在復現R-CNN一系列的實驗時,配置代碼環境真是花費了不少時間。由于對MATLAB不熟悉,實驗采用的都是github上rbg大神的Python版本。在配置Faster R-CNN時,編譯沒有問題,一運行 ./tools/demo.py --net zf ?就會出現如下錯誤:
<span style="font-size:14px;">Loaded network ./data/faster_rcnn_models/ZF_faster_rcnn_final.caffemodel ? ?
F1008 ?roi_pooling_layer.cu:91] Check failed: error == cudaSuccess (8 vs. 0) invalid device function ? ?
*** Check failure stack trace: *** ?</span> ?
但是采用CPU?mode運行時可以成功。
最后在https://github.com/rbgirshick/py-faster-rcnn/issues/2 找到了我想要的答案,有興趣的可以慢慢閱讀。
不想看的話,就直接按照我下面的方式修改。
一般情況下都是因為顯卡的計算能力不同而導致的,修改?py-faster-rcnn/lib/setup.py?的第135行,將arch改為與你顯卡相匹配的數值,(比如我的GTX?760,計算能力是3.0,就將sm_35改成了sm_30)然后刪除utils/bbox.c,nms/cpu_nms.c?,nms/gpu_nms.cpp?重新編譯即可
我看到有些人說還有其他的問題,那么可以在最開始的makefile.config文件中就開始修改,不過我沒有試過,具體步驟如下
轉載于:https://www.cnblogs.com/huty/p/8517108.html
總結
以上是生活随笔為你收集整理的【CUDA开发】 Check failed: error == cudaSuccess (8 vs. 0) invalid device function的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python模块之 paramiko(转
- 下一篇: 在Unity3D项目中接入ShareSD