【原】caffe 编译问题总结
1.ubuntu16.04 cuda8.0 caffe 编译时遇到 caffe fatal error: cublas_v2.h 没有那个文件或目录
make caffe的过程中碰过 ./include/caffe/util/device_alternate.hpp:34:23: fatal error: cublas_v2.h: 没有那个文件或目录。
CUDA8.0 中的include、lib路径是安装目录下/usr/local/cuda-8.0下面的include和lib。
将其分别添加到caffe根目录下Makefile.config中的"INCLUDE_DIRS"、“LIBRARY_DIRS”后面就可以了。
将原
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
改为
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/local/cuda-8.0/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/local/cuda-8.0/lib
即可成功编译。
2.Check failed: error == cudaSuccess (8 vs. 0) invalid device function *** Check failure stack trace: ***
caffe在make和make pycaffe的过程中没有问题,但是在执行python脚本的时候,报出这个错误。这里给出rgb在faster-rcnn中的issue:https://github.com/rbgirshick/py-faster-rcnn/issues/2
执行python脚本出现的错误为:
这时我caffe路径下的makefile.config配置CUDA为:
注意到我CUDA_ARCH的结构配置下面三行是注释了的。
---------------------------------------------------------------------------分割线---------------------------------------------------------------------------------------------------
查阅资料,遇到的问题是显卡的计算能力不匹配问题造成的。需要针对自己服务器上的CUDA在caffe路径下的makefile.config中的CUDA_ARCH做相应修改,我的CUDA配置情况为(1080)(使用nvidia-smi命令查看):
下面这张图是在网上找的:https://blog.csdn.net/allyli0022/article/details/54628987
我理解的是我CUDA是1080的,计算能力是6.1,所以需要把compute_61和sm_61打开,于是我把上图中的CUDA_ARCH中的下面三行注释去掉之后:
保存之后继续在caffe路径下make clean,make,make pycaffe。
完成之后继续执行python脚本,就成功了。
3.Check failed: error == cudaSuccess (8 vs. 0) invalid device function *** Check failure stack trace: ***
caffe在make