1. 程式人生 > >ubuntu16.04下caffe安裝(GPU版)

ubuntu16.04下caffe安裝(GPU版)

1. 安裝 opencv

opencv3.1.0 安裝過程見上一部落格 http://blog.csdn.net/zly_kemgine/article/details/78749764

2. 安裝NVIDIA顯示卡驅動

最好採用系統適配顯示卡驅動的方式

找到附加驅動



輸入以下指令進行驗證:

sudo nvidia-smi

若列出了GPU的資訊列表則表示驅動安裝成功。如下圖:


3. 安裝cuda8.0

(1) 下載cuda

首先在官網上(https://developer.nvidia.com/cuda-downloads)下載CUDA.  這裡提供了下載好的百度雲連結  https://pan.baidu.com/s/1qXAUd5a  密碼 f415


(2) 下載完成後執行以下命令

1 sudo chmod 777 cuda_8.0.61_375.26_linux.run
2 sudo  ./cuda_8.0.61_375.26_linux.run
注意:首先會提醒你看一些它的使用協議,一直按空格直到出現是否同意,選擇Accept,(執行後會有一系列提示讓你確認,但是注意,有個讓你選擇是否安裝nvidia367驅動時,一定要選擇
Install NVIDIA Accelerated Graphics Driver forLinux-x86_64 367.48?
因為前面我們已經安裝了更加新的nvidia367,所以這裡不要選擇安裝。其餘的都直接預設或者選擇是即可

具體顯示如下

(3) 環境變數配置

開啟~/.bashrc檔案:

sudo gedit ~/.bashrc

將以下內容寫入到~/.bashrc尾部:

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

/etc/profile檔案中新增CUDA環境變數:

sudo gedit /etc/profile

開啟文件都在文件結尾加上下面兩句:

1 PATH=/usr/local/cuda/bin:$PATH  
2 export PATH

儲存後, 執行下列命令, 使環境變數立即生效:

source /etc/profile

同時新增lib庫路徑,在 /etc/ld.so.conf.d/新建檔案 cuda.conf

sudo gedit /etc/ld.so.conf.d/cuda.conf

在文中加入下面內容:

/usr/local/cuda/lib64

執行下列命令使之立刻生效:

sudo ldconfig

(4) 測試cuda

在終端中進入CUDA 8.0 Samples預設安裝路徑,

 cd /usr/local/cuda-7.5/samples/
輸入命令
sudo make all

完成後繼續輸入

  1. cd bin/x86_64/linux/release   
  2. ./deviceQuery

如果顯示一些關於GPU的資訊,則說明安裝成功。

nvcc -V命令可檢視版本情況


4. 安裝cudnn

  1. cd cuda/include/   
  2. sudo cp cudnn.h /usr/local/cuda/include/   
  3. cd ../lib64   
  4. sudo cp lib* /usr/local/cuda/lib64/   
  5. sudo chmod a+r /usr/local/cuda/include/cudnn.h/usr/local/cuda/lib64/libcudnn*

接下來執行下列命令

  1. cd /usr/local/cuda/lib64/   
  2. sudo rm -rf libcudnn.so libcudnn.so.5   
  3. sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5   
  4. sudo ln -s libcudnn.so.5 libcudnn.so

5. 安裝caffe

(1) 安裝依賴包

1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
2 sudo apt-get install --no-install-recommends libboost-all-dev
3 sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
4 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
參看caffe官網

(2) 設定Makefile.config檔案

sudo cp Makefile.config.example Makefile.config
sudo gedit Makefile.config #開啟Makefile.config檔案
修改成:
USE_CUDNN := 1  #去掉#號
OPENCV_VERSION := 3
WITH_PYTHON_LAYER := 1   #使用python來編寫層
重要的
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial 

(3) 修改Makefile檔案
  1. $ vim Makefile  
  2. - opencv_core opencv_highgui opencv_imgproc  
  3. + opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs  

    在位置((LIBRARIES += glog gflags protobuf leveldb snappy \
    lmdb boost_system hdf5_hl hdf5 m \
    opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs))處新增opencv_imgcodecs

修改

  1. $ vim examples/cpp_classification/classification.cpp  
  2. + #include <opencv2/imgproc/types_c.h>  
  3. + #include <opencv2/objdetect/objdetect_c.h>

(4) 編譯

cd caffe-master
mkdir build
cd build
cmake ..
cd ..
make all
make test
make runtest
5. 安裝python介面

首先回到caffe的根目錄,然後執行安裝程式碼:

1 cd ~/caffe
2 sudo apt-get install gfortran
3 cd ./python
4 for req in $(cat requirements.txt); do pip install $req; done

安裝完成以後,再次回到caffe根目錄我們可以執行:

1 cd ..
2 sudo pip install -r python/requirements.txt

編譯python介面:

make pycaffe

配置環境變數,以便python呼叫:

sudo gedit ~/.bashrc

export PYTHONPATH=/home/caffe/python:$PYTHONPATH新增到檔案中

source ~/.bashrc

參考連結如下

http://www.cnblogs.com/go-better/p/7161006.html (依賴庫 cuda安裝)
http://www.linuxidc.com/Linux/2016-11/137561.htm (cuda測試)
http://blog.csdn.net/lhanchao/article/details/54667728(cuDNN安裝)
http://www.nvidia.com/object/macosx-cuda-8.0.81-driver.html(cuda 8.0)