一.安装显卡驱动
1.我的显卡型号是Geforce GTX TITAN X,在官网查询相应的驱动,并下载官网:http://www.geforce.cn/drivers 我下载的是:NVIDIA-Linux-x86_64-375.66.run
下载完成后放在/home/iscas/Downloads/caffe目录下
2.安装显卡驱动
2.1 为驱动增加可执行权限 sudo chmod +x NVIDIA-Linux-x86_64-375.66.run
2.2 屏蔽开源驱动 sudo gedit /etc/modprobe.d/blacklist.conf
并在文本最后一行添加 blacklist nouveau
2.3 重启 sudo reboot
打开终端敲入命令 lsmod | grep nouveau 若无输出表示该驱动禁用成功
2.4 切换到tty1 Ctrl+Alt+F1 进入字符界面
2.5 在纯字符界面下登陆用户,用户名:iscas 密码:iscas
2.6 关闭图形界面 sudo service lightdm stop
2.7 开始安装 sudo ./NVIDIA-Linux-x86_64-375.66.run
或者执行 sudo sh .NVIDIA**.run
安装过程中分别选择 Accept Continue Installation Yes
2.8 安装完成后重启图形界面 sudo service lightdm start 然后Ctrl+Alt+F7进入图形界面
2.9 验证英伟达驱动是否安装成功 sudo nvidia-smi
二.安装cuda
1.CUDA安装包
官网地址:http://developer.nvidia.com/cuda-downloads
64位的Ubuntu 14.04,所以选择相应的runfile: cuda_8.0.61_375.26_linux.run
可在百度云盘中下载,下载完成后放在/home/iscas/Downloads/caffe目录下
2.安装CUDA:
2.1 为驱动增加可执行权限 sudo chmod +x cuda_8.0.61_375.26_linux.run
2.2 Ctrl+Alt+F1 进入字符界面
2.3 在纯字符界面下登陆用户,用户名:iscas 密码:iscas
2.4 关闭图形界面 sudo service lightdm stop
2.5 开始安装 sudo ./cuda_8.0.61_375.26_linux.run
安装过程中,询问是否安装OpenGL,选择n,其余都选y,安装路径默认即可,直接按Enter键,最后会显示installed,否则显示failed。
2.6 安装完成后重启图形界面 sudo service lightdm start 然后Ctrl+Alt+F7进入图形界面
2.7 设置环境变量,执行:sudo gedit /etc/profile 在文件末尾添加,如下内容:
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-8.0/bin:$PATH
保存,退出。输入:sudo ldconfig, 环境变量立即生效
验证安装是否完成,输入:nvidia-smi
2.8 测试cuda的samples
cd /home/iscas/NVIDIA_CUDA-8.0_Samples,执行:make
进入1_Utilities目录,执行: ./deviceQuery/deviceQuery
三.安装cudnn
1.cudnn安装包
在我的百度云盘下载了cudnn-8.0-linux-x64-v5.1.tgz
2.安装cudnn
2.1进入存放cudnn安装包的目录 cd /home/Downloads/caffe/
2.2 解压缩 sudo tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz
会生成cuda/include和cuda/lib64
2.3 将cuda/include目录中的cudnn.h文件拷贝到/usr/local/cuda-8.0/include/目录下
sudo cp cuda/include/cudnn.h /usr/local/cuda-8.0/include/
2.4 将cuda/lib64目录中的库拷贝到/usr/local/cuda-8.0/lib64/目录下
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64/
2.5 将/usr/local/cuda-8.0/lib64/目录下的libcudnn库的权限改为777
sudo chmod 777 /usr/local/cuda-8.0/include/cudnn.h
sudo chmod 777 /usr/local/cuda-8.0/lib64/libcudnn*
四.安装caffe
1.安装一系列的库
1.1
sudo apt-get install git
1.2
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
1.3
sudo apt-get install libatlas-base-dev
1.4
sudo apt-get install the python-dev
1.5
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
1.6
sudo apt-get install --no-install-recommends libboost-all-dev
2.安装caffe
2.1 从github上获取caffe,下载到/home目录下
cd /home
git clone https://github.com/BVLC/caffe.git
2.2 将Makefile.config.example的内容复制到Makefile.config:
sudo cp Makefile.config.example Makefile.config
2.3打开并修改配置文件:
sudo gedit Makefile.config
针对需求修改几项即可,如下:
a.若使用cudnn,则将:#USE_CUDNN := 1 修改成:USE_CUDNN := 1
b.若要使用python来编写layer,则将:#WITH_PYTHON_LAYER := 1去掉#号修改为:WITH_PYTHON_LAYER := 1
c.修改成:USE_OPENCV := 1, USE_LEVELDB := 1, USE_LMDB := 1
2.4 编译:
a. make; b. make test; c. make runtest
make runtest 时报错:make runtest error while loading shared libraries libcudart.so.8.0
将几个文件libcudart.so.8.0 libcublas.so.8.0 libcurand.so.8.0 libcudnn.so.5 从目录/usr/local/cuda-8.0/lib64/ 拷贝到 /usr/lib/
分别执行如下操作:
sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/lib/libcudart.so.8.0
sudo ldconfig
2.5 用Mnist数据集进行测试
a.将终端定位到Caffe根目录: cd ~/caffe
b.下载MNIST数据库并解压缩: ./data/mnist/get_mnist.sh
c.将其转换成Lmdb数据库格式: ./examples/mnist/create_mnist.sh
d.训练网络: ./examples/mnist/train_lenet.sh
五.编译pycaffe
我的caffe源码放在/home/iscas/caffe
cd /home/iscas/caffe
1.1
sudo apt-get install python-dev python-pip
1.2
sudo apt-get install python-numpy
sudo apt-get install python-scipy
1.3 进入到caffe/python目录
cd python
for req in $(cat requirements.txt); do sudo pip install $req; done
If has problem, this solution is: 修复pip
1.download file: get-pip.py from: https://pip.pypa.io/en/latest/installing/
2.sudo python get-pip.py
1.4
make pycaffe
1.5 在Ubuntu环境下,打开python解释程序,输入import caffe时,出现错误解决方法:
a. sudo gedit ~/.bashrc
b. export PYTHONPATH=/home/iscas/caffe/python
c. source ~/.bashrc
1.6 测试pycaffe是否编译成功
python
import caffe
出现错误:ImportError: cannot import name cbook
解决方案:
卸载之前的matplotlib:
sudo pip uninstall matplotlib
使用该命令重新安装:
sudo apt-get install python-matplotlib