1. 程式人生 > >Ubuntu 16.04 安裝CUDA8.0+Cudnn6.0+TensorFlow+Caffe安裝

Ubuntu 16.04 安裝CUDA8.0+Cudnn6.0+TensorFlow+Caffe安裝

參考部落格:
Ubuntu16.04 Caffe 安裝步驟記錄(超詳盡):http://blog.csdn.net/yhaolpz/article/details/71375762
ubuntu16.04安裝caffe:http://blog.csdn.net/u011272513/article/details/52103453#

環境說明:

1)Ubuntu 16.04:ubuntu-16.04.3-desktop-amd64.iso
2)採用CUDA 8.0 :cuda_8.0.44_linux.run
3)Cudnn 6.0:cudnn-8.0-linux-x64-v6.0.tgz
4)TensorFlow
5)Caffe
6)Python 2.7
7)pip 9.0.1

具體安裝步驟:

一:CUDA 8.0安裝

(包括NVIDIA顯示卡驅動和CUDA庫檔案)
通過英偉達安裝包來分別安裝庫的驅動程式而不是使用apt-get 來安裝。如果只有CPU,則可以跳過這步。
1)開啟終端,加入官方PPa源:

sudo  add-apt-repository ppa:graphics-drivers/ppa
  
  • 1

2)按enter鍵確認,之後更新軟體庫並安裝最新驅動

    sudo apt-get update
    sudo apt-get install nvidia-367 nvidia-settings nvidia-prime
  • 1
  • 2

Note:該Ubuntu 映象檔案在sudo apt-get update 時報錯,解決方法:
輸入命令:sudo apt-get purge libappstream3
之後再次執行 sudo apt-get update命令就正常了。

3)安裝完成後,通過命令檢視是否安裝成功

     nvidia-settings
  
  • 1

此時,安裝完成後,要重啟電腦,有如下效果則安裝完成,否則就說明安裝有問題,嘗試關閉UEFI保護試試。這裡寫圖片描述

4)從官網上下載CUDA 8.0檔案,下載cuda_8.0.44_linux.run檔案,將其放至~/CUDA資料夾下,cd命令進入該檔案所在目錄,進行MD5檢驗,確保安裝包正常。

  sudo md5sum cuda_8.0.44_linux.run
  
  • 1

5)檢驗正確後,輸入如下程式碼安裝(第一行修改檔案許可權,第二行執行檔案安裝):

chmod 777 cuda_8.0.44_linux.run
sudo ./cuda_8.0.44_linux.run  --override
  
  • 1
  • 2

這裡寫圖片描述

執行程式碼後,跳出相關資訊,左下方出現–更多–(0%) 這樣,
這裡寫圖片描述
一直按Enter鍵直到跳到100%結束退出,接下來要求輸入相關配置命令,如下圖,注意別弄錯了,第二行配置詢問是否要安裝NVIDIA影象驅動器時,一定要選n,否則系統會報錯,具體如下圖:
這裡寫圖片描述
安裝完成後出現如下說明安裝正確:
這裡寫圖片描述

二、Cudnn 6.0安裝
注意下載的版本為:cudnn-8.0-linux-x64-v6.0.tgz
其中CUDA對應的5.1版本,在後面安裝TensorFlow時會出現問題。
1)進入檔案所在目錄進行解壓:

tar zxvf cudnn-8.0-linux-x64-v6.0.tgz
  
  • 1

2)解壓後有個cuda檔案,內有include 和 lib64兩個檔案,進入include資料夾,執行如下命令:

sudo cp cudnn.h /usr/local/cuda/include
  
  • 1

再cd切換進lib64資料夾,執行如下命令:

sudo cp lib* /usr/local/cuda/lib64/
  
  • 1

3)進入複製後的動態連結庫進行新的連結:

cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.6
sudo ln   -s  libcudnn.so.6.0.21  libcudnn.s.6
sudo ln   -s  libcudnn.so.6  libcudnn.so
  
  • 1
  • 2
  • 3
  • 4

注意:此處Cudnn版本不一樣,後面的序號也會有差別,建議用補全鍵進行檔案補全。
4)設定環境變數和動態連結庫:

sudo gedit /etc/profile
  
  • 1

在開啟的檔案末尾加上(“=”前後不要有空格)

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

儲存之後建立連結檔案:

sudo vim /etc/ld.so.conf.d/cuda.conf  
  
  • 1

按下鍵盤i進行編輯:

/usr/local/cuda/lib64
  
  • 1

按下Esc鍵,輸入:wq儲存退出。
最後在終端輸入以下命令使該連結生效:

sudo ldconfig
  
  • 1

5)使用sample裡面的例子來測試還需要編譯。進入用例檔案進行編譯(注意執行第二部命令時需要較長時間是正常現象):

cd /usr/local/cuda/samples  
sudo make all -j4  
cd /usr/local/cuda/samples/bin/x86_64/linux/release  
sudo ./deviceQuery  
  
  • 1
  • 2
  • 3
  • 4

執行命令後出現如下資訊,則說明顯示卡驅動和cuda安裝成功。
這裡寫圖片描述

三、TensorFlow安裝
直接執行命令:

sudo pip install pip --upgrade  //對pip進行版本升級
sudo pip install tensorflow-gpu  //安裝GPU版的tensorFlow
  
  • 1
  • 2

確認是否安裝成功:

python
import tensorflow as tf
  
  • 1
  • 2

如下圖片:
這裡寫圖片描述

注意,Ubuntu16.04,預設pip版本為8.0,而TensorFlow安裝需要版本為pip 9.0.1
另外,由於pip安裝為國外檔案下載,所以下載速度會很慢,在安裝過程中,注意換源或則執行如下方法:
報錯如下:
ReadTimeoutError: HTTPSConnectionPool(host=’pypi.python.org’, port=443): Read

解決辦法一:
加大超時時間:pip --default-timeout=100 install -U pip

解決辦法二:
在~目錄下,建一個.pip的目錄:

mkdir .pip
cd .pip
gedit pip.conf
  
  • 1
  • 2
  • 3

在檔案中寫入以下內容,儲存並關閉(選用的豆瓣源):

[global]
index-url = http://pypi.douban.com/simple
trusted-host = pypi.douban.com#沒有這句會包warning
disable-pip-version-check = true #版本不檢查
timeout = 120#超時時間設定 
  
  • 1
  • 2
  • 3
  • 4
  • 5

四、caffe安裝
1.安裝各種依賴包

sudo apt-get update  
sudo apt-get install -y build-essential cmake git pkg-config  
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler  
sudo apt-get install -y libatlas-base-dev  
sudo apt-get install -y --no-install-recommends libboost-all-dev  
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev  
sudo apt-get install -y python-pip  
sudo apt-get install -y python-dev  
sudo apt-get install -y python-numpy python-scipy  
sudo apt-get install -y libopencv-dev  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

2.下載caffe

cd ~
git clone https://github.com/BVLC/caffe.git    //從github上git caffe 
  
  • 1
  • 2

3.安裝配置caffe

cd caffe    //開啟到剛剛git下來的caffe  
cp Makefile.config.example Makefile.config //make指令只能make Makefile.config  
sudo gedit Makefile.config      //開啟Makefile.config檔案  
  
  • 1
  • 2
  • 3

4.配置檔案修改(看英文提示根據具體修改):
1)應用cudnn

#USE_CUDNN :=1
修改成: 
USE_CUDNN := 1
  
  • 1
  • 2
  • 3
  • 4

2)應用opencv版本

#OPENCV_VERSION := 3 
修改為: 
OPENCV_VERSION := 3
  
  • 1
  • 2
  • 3
  • 4

3)使用python介面

#WITH_PYTHON_LAYER := 1 
修改為 
WITH_PYTHON_LAYER := 1
  
  • 1
  • 2
  • 3
  • 4

4)修改python路徑:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 
  
  • 1
  • 2

修改為:

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       
  
  • 1
  • 2

5)修改caffe目錄下的Makefile檔案:
將:

NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
  
  • 1

替換為:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
  
  • 1

將:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
  
  • 1

改為:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
  
  • 1

6)最後進入caffe目錄,進行編譯

cd caffe
make all -j4
make test -i4
make runtest
make pycaffe
  
  • 1
  • 2
  • 3
  • 4
  • 5

正確結果如下:
這裡寫圖片描述

如果編譯沒有報錯,則基本沒有問題。

7)相關庫安裝:
首先要安裝python介面依賴庫,在caffe根目錄的python資料夾下,有一個requirements.txt的清單檔案,上面列出了需要的依賴庫,安裝這個清單安裝就可以。
在安裝scipy庫的時候,需要fortran編譯器,如果沒有這個編譯器就會報錯,因此,可以先安裝以下。
首先進入 caffe/python 目錄下,執行安裝程式碼:

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

之後,執行以下命令:

sudo pip install -r requirements.txt
  
  • 1

就會看到,安裝成功的,都會顯示Requirement already satisfied, 沒有安裝成功的,會繼續安裝。

注意如果有如下問題:
No module named caffe,
解決辦法一
終端中輸入

sudo gedit /etc/profile
  
  • 1

在最後新增:

export PYTHONPATH=/home/yp/caffe/python:$PYTHONPATH
  
  • 1

儲存退出後,在終端輸入:

source /etc/profile
  
  • 1

解決辦法二:

sudo gedit ~/.bashrc

#add the folling line

export PYTHONPATH=/path/to/caffe-master/python:$PATHONPATH

source ~/.bashrc
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

解決辦法三:
每次寫程式碼的時候,都直接將caffe的路徑加入即可,只要caffe安裝成功,其他都是小問題

import sys
sys.path.append('/path/to/caffe-master/python')
import caffe
  
  • 1
  • 2
  • 3

8)安裝jupyter:

sudo pip install jupyter
  
  • 1

安裝完成後,執行notebook

jupyter notebook
  
  • 1

ipython notebook
  
  • 1

出現如下畫面:
這裡寫圖片描述

9)驗證是否安裝正確:

python
import caffe
  
  • 1
  • 2

轉載自https://blog.csdn.net/u013401766/article/details/78559495