Ubuntu 16.04 下用 cmake 安装 caffe

首先要确保你的Unbuntu是16.04的版本,14.04好像不支持命令行直接装显卡驱动!

2019.5.9 更新——————————————————————

对应的 CUDA 和 CUDNN 包括 NVIDIA 的驱动,安装步骤同样,只要根据需求,手动将对应版本号替换掉即可

————————————————————————————

1. 禁用nouveau驱动

首先输入下面的命令来创建一个名字叫blacklist-nouveau.conf的关闭文件:

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

然后在这个空白文件中输入下面指令后保存退出:

blacklist nouveau

下面可以来验证是否正确禁止了nouveau驱动:

sudo update-initramfs -u
sudo lspci | grep nouveau

如果输入以后什么都没输出,那么说明禁止成功了。
然后重启。

sudo reboot

####Tips:若重启后可以正常进入系统,恭喜,可以继续下一步了。如果禁用后重启电脑直接就黑屏,进不去系统的,一般我都是重启,在重启时进入BIOS里面找到显卡输出选项,将输出显卡由独显改成集显,再重启,重启的时候就把显示器插到电脑的集成显卡上,一般就可以正常进系统了。然后继续后面的步骤,等到安装完成再进BIOS把输出显卡换成集显就可以了。

##2.安装Nvidia显卡驱动
这里其实是最容易出问题的,在我多次安装系统以及配置框架的过程中禁用nouveau显卡后进不去系统界面的,或者用自己从官网上的官方驱动也循环登陆的,与CUDA版本不匹配,或者黑屏的都有,主要在解决循环登录的问题中发现的(详见:Ubuntu 循环因为Nvidia显卡循环登陆的问题)还是觉得以下的方法最靠谱:

sudo apt-get upgrade 
sudo apt-get install nvidia-375
sudo dpkg-reconfigure nvidia-375
sudo reboot

##3.安装CUDA 8.0
首先去NVIDIA官网去官网下载想的CUDA,这里我依旧装的是 8.0 版本的。 选择你下载好的 runfile,记住文件下载后所在的路径,最好放在Download或者Desktop路径下,然后ctrl+alt+F1 进入tty1模式,输入你的用户名和密码。
成功登录后依次输入:

sudo service lightdm stop  #关闭图形界面
cd /path/to/your/cuda_file  # cd 到 cuda 文件所在的路径下
sudo sh cuda_8.0.61_375.26_linux.run  # 开始安装 CUDA

在输入以后可以看见左下角有一个more(0%), 我们直接按q就可以跳过了,完事会有:

Do you accept the previously read EULA?
accept/decline/quit:

在后面输入 accept 就可以了。
然后会有:

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64.XXX.XX
(y)es/(n)o/(q)uit:

前面已经自己装过了,所以直接选择no,余下的部分直接yes就可以了。
安装完成会报错说缺少什么.so文件让你加路径,这个时候直接恢复图形界面:

sudo service lightdm start

登录进入界面后要把CUDA的路径加入环境变量,在命令行中输入:

sudo gedit ~/.bashrc

在文件末尾写入:

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64/:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-8.0/bin:/usr/local/cuda/bin:$PATH

最后输入下面命令,让环境变量生效:

source ~/.bashrc

以上CUDA8.0就安装完成了,下面是验证安装是否成功:
找到 /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery 文件夹下输入:

sudo make
./deviceQuery

没报错会输出很多信息,最后一条显示是 Result = PASS 就说明安装成功了。

##4.安装 CUDNN
首先我们要下载cudnn的压缩包名为:cudnn-8.0-linux-x64-v5.1.tgz,然后可以手动解压,也可以依次输入:

sudo tar xvf cudnn-8.0-linux-x64-v5.1.tgz
cd ~/Downloads/cuda/lib64 #若报错,说明路径和我的不一样,就改为cuda下面lib64文件夹的路径就可以了
sudo cp lib* /usr/local/cuda/lib64/
cd ~/Downloads/cuda/include #若报错,说明路径和我的不一样,就改为cuda下面include文件夹的路径就可以了
sudo cp *.h /usr/local/include/
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.5.1.10
sudo ln -sf libcudnn.so.5.1.10 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
sudo ldconfig
Tips: 多GPU 训练

(想要多GPU 训练caffe,需要先安装 NCCL,可使用以下命令安装 NCCL:

git clone https://github.com/NVIDIA/nccl.git
cd nccl
sudo make install -j4

NCCL 库和文件头将安装在 /usr/local/lib 和 /usr/local/include 中)

5. 下载 caffe

首先需要安装大量的依赖库:

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install git build-essential
sudo apt-get install python-pip python-numpy
sudo pip install protobuf
sudo pip install scikit-image

然后在caffe github地址:https://github.com/BVLC/caffe.git 中下载 caffe.

然后我们之前没有安装cmake的话,需要先安装一下cmake:

sudo apt-get install cmake-qt-gui

下载完caffe以后会得到一个名为 caffe 的文件夹,我们进入这个文件夹然后在此路径下打开命令行输入:

mkdir build
cmake-gui

然后按如下步骤点击:

Ubuntu 16.04 下用 cmake 安装 caffe_第1张图片

Tips:多GPU 训练

(这里在前面安装完 NCCL 的前提下,在 cmake 里面找到,“USE_NCCL”, 勾选:
在这里插入图片描述
若不同多GPU,不用勾选,直接继续下面的步骤即可。)

然后:

Ubuntu 16.04 下用 cmake 安装 caffe_第2张图片

上述步骤完成后,进入cmake-gui编译完的build文件夹:

cd build
make -j4

这里 -j4 是表示四核并行编译,这个是根据你的电脑配置来的,若8核可以 -j7 或者 -j8。

这里并不需要做任何的文件修改,直接编译即可。编译完成后再编译python接口,

make pycaffe

输出:

Ubuntu 16.04 下用 cmake 安装 caffe_第3张图片

最后将caffe的 python 文件夹的路径加入环境变量:

sudo gedit ~/.bashrc

在文件末尾加入:

export PYTHONPATH=/path/to/caffe/python

然后:

source ~/.bashrc

Tips:这里使用的是系统自带的Python2.7,如果 source 以后进入Python 仍然不能 Import caffe ,直接登出重新登录,或者重启就可以了。

至此我们的 caffe 就配置完成了。

相关博客:

Caffe框架下如何训练自己的数据集和网络
ShuffleNet在Caffe框架下的实现
caffe-SSD配置及用caffe-MobileNet-SSD训练自己的数据集

你可能感兴趣的:(caffe学习,配置文件)