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