caffe安装记录

caffe安装记录


配置:ubuntu14.04.5,gtx1080ti显卡,cudnn-v5.1for-cuda8.0,cuda8.0,opencv2.4.9

1、安装nvidia驱动

关闭图形界面,sudo stop lightdm,
然后切换到tty1:Ctrl+Alt+F1即可
在纯字符界面下,登陆root用户;
接下来就是最关键的一步了:sudo ./NVIDIA.run开始安装,安装过程比较快,根据提示选择即可(Nvidia.run版本选择,自己根据显卡型号在nvidia官网http://geforce.com/drivers中查找)
最后安装完毕后,重新启动图形界面:sudo start lightdm,然后Ctrl+Alt+F7进入图形界面


2、安装cuda8.0(链接

sudo dpkg -i cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb(这里改成自己下载的cuda8.0的包名即可)
sudo apt-get update
sudo apt-get install cuda
这时会在/usr/local/下出现cuda和cuda-8.0两个文件夹
在/etc/profile文件的最后添加环境变量:export PATH=/usr/local/cuda-8.0/bin:$PATH
       export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
保存之后 source /etc/profile使环境变量生效
查看驱动,Toolkit版本
cat /proc/driver/nvidia/version
nvcc -V

3、编译cuda Samples(可跳过)

切换到路径/usr/local/cuda-8.0/samples/下执行 sudo make。可能出现如下的错误:
/usr/bin/ld: cannot find -lnvcuvid
查看 链接(参考博客)
发现,是英伟达显卡驱动版本不同导致的.在/usr/local/CUDA-8.0/Samples/3_Imaging/cudaDecodeGL/findgllib.mk文件中,
UBUNTU_PKG_NAME = "nvidia-367",把它修改为UBUNTU_PKG_NAME = "nvidia-375"(自己驱动的版本)
再执行sudo make,编译的结果在/usr/local/cuda-8.0/samples/bin/x86_64/linux/release,切到该路径下,执行sudo ./deviceQuery,出现Result = PASS表明暂时成功。再执行sudo ./bandwidthTest,出现Result = PASS表明cuda8.0安装成功。如果失败,可以重启一下机器试试。

4、安装CUDNN

tar -xzvf cudnn包名,出现cuda的文件夹。cd cuda进到该文件夹。进到lib64文件夹内执行命令:sudo cp lib* /usr/local/cuda-8.0/lib64/;进到cuda下的include文件夹,执行命令:sudo cp cudnn.h /usr/local/cuda-8.0/include/
cudnn安装步骤结束!

5、安装opencv2.4.9

安装opencv参考的是百度经验的文章: 链接
但是在执行命令;cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..后再执行make -j $(nproc)时出现如下的错误:
Unsupported gpu architecture 'compute_11'
解决办法是:在上面要cmake时(替换上面的cmake命令)执行这条cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=OFF -D WITH_OPENGL=ON -D BUILD_TIFF=ON ..
再执行make -j $(nproc)时可能出现如下错误: a storage class is not allowed in an explicit specialization问题 
解决办法:下载NCVPixelOperations.hpp( 链接),用来替换/home/用户名/opencv-2.4.9/modules/gpu/src/nvidia/core/下的NCVPixelOperations.hpp,再make时出现如下的错误:
/home/usrname/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:135:18: error: ‘NppiGraphcutState’ does not name a type
         operator NppiGraphcutState*()
                  ^
解决办法:sudo find / -name graphcuts.cpp找出具体的路径,修改文件里的内容:
将#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) 改为
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)

6、编译caffe

caffe的编译网上太多了,我就不写了。 参考链接
在编译MATLAB接口时。可能要将gcc版本降级, 参考链接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值