caffe配置问题与解决方法集锦

问题1:Check failed: error == cudaSuccess (8 vs. 0) invalid device function

  今天看一篇Paper的时候,要用到Facebook基于caffe改动的适用于3D卷积的代码:C3D: a modified version of BVLC caffe to support 3D ConvNets。于是就git下来,进行配置,Facebook用的caffe是很早之前的caffe了,看源码应该是2014年的。
  在配置时,make all -jmake test -j都通过了,唯独在make runtest -j这里卡住了,把我这个“专业配置caffe50年”的“老手”都难住了。但经过google,还是找到了解决办法。
  我的这个解决办法不一定适用于你的,但如果能帮到你,那真是太好了!^_^…


  我的问题如下:

出现问题,Google之,最后问题定位在Makefile.config中的这一部分:

# CUDA architecture setting: going with all of them (up to CUDA 5.5 compatible).
# For the latest architecture, you need to install CUDA >= 6.0 and uncomment
# the *_50 lines below.
CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
             -gencode arch=compute_20,code=sm_21 \
             -gencode arch=compute_30,code=sm_30 \
             -gencode arch=compute_35,code=sm_35
             #-gencode=arch=compute_50,code=sm_50 \
             #-gencode=arch=compute_50,code=compute_50 \

  这是我开始时未改动的Makefile.config中的部分,这种错误的情况是由于显卡计算能力的不同而又没配置好导致的。要将上面的CUDA_ARCH参数改为与你显卡相匹配的数值。
  常见的显卡计算能力如下表:

caffe配置问题与解决方法集锦_第1张图片
我的是 TITAN X计算能力是 5.2,因此,我将上面的 Makefile.config文件中的 CUDA_ARCH参数改为如下:

CUDA_ARCH := #-gencode arch=compute_20,code=sm_20 \
             #-gencode arch=compute_20,code=sm_21 \
             #-gencode arch=compute_30,code=sm_30 \
             #-gencode arch=compute_35,code=sm_35
             #-gencode=arch=compute_50,code=sm_50 \
             #-gencode=arch=compute_50,code=compute_50 \
             -gencode arch=compute_52,code=compute_52

就是把其余的都注释掉,增加一行自己显卡与之相对应计算能力的设置:

CUDA_ARCH := -gencode arch=compute_52,code=compute_52



再重新编译caffe,再make runtest -j:


至于 YOU HAVE 2 DISABLED TESTS, 参见我这篇博客里,直接忽略掉,不影响。

Reference:

  1. http://blog.csdn.net/u013078356/article/details/51009470
  2. http://www.cnblogs.com/yymn/articles/5389904.html

问题2:fatal error: pyconfig.h: No such file or directory

  紧接着问题1的环境,我在make pycaffe的时候,又报如下错误:

/usr/include/boost/python/detail/wrap_python.hpp:50:23: fatal error: pyconfig.h: No such file or directory
compilation terminated.
make: *** [python/caffe/_caffe.so] Error 1

  我解决的方法参考自这个网页:

caffe配置问题与解决方法集锦_第2张图片

所以,按照大神的指示,敲:

$ export CPLUS_INCLUDE_PATH=/usr/include/python2.7

  搞定~

caffe配置问题与解决方法集锦_第3张图片
之后, import caffe也能成功import.

你可能感兴趣的:(深度学习,caffe)