1. 程式人生 > >Whl方式CUDA8.0+cuDNN6.0.21+python3.4的ubuntu環境下tensorflow的安裝

Whl方式CUDA8.0+cuDNN6.0.21+python3.4的ubuntu環境下tensorflow的安裝

原始碼安裝tensorflow請參照http://blog.csdn.net/u013591306/article/details/79031001

下面主要介紹Whl方式安裝tensorflow的方法

1、下載 GPU版本的tensorflow

下載地址 https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.4.0-cp34-cp34m-linux_x86_64.whl

2、用pip3安裝tensorflow_gpu-1.4.0-cp34-cp34m-linux_x86_64.whl,tensorflow的預設安裝路徑在/usr/local/lib/python3.4/dist-packages/tensorflow

pip3 install  tensorflow_gpu-1.4.0-cp34-cp34m-linux_x86_64.whl

遇到的問題1、Command "/usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-3lUDcU/M2Crypto/setup.py';

python-dev依賴問題,安裝對應python版本的依賴即可。sudo apt-get python3.4-dev

遇到的問題2、import tensorflow 出錯libcudnn.so.6: cannot open shared object file: No such file or directory

解決辦法一:根據錯誤程式碼,找不到libcudnn.so.6。到指定資料夾下發現只有5.0和8.0的版本,沒有6.0,查詢原因是因為當前已經是1.4版本,而tensorflow-gpu1.3已經開始去找cudnn6了(也就是說是用cudnn6編譯的)。所以可以換到tensorflow-gpu1.2版本,就解決問題了。 

解決辦法二

去https://developer.nvidia.com/rdp/cudnn-download 下載相應的cudnn庫(在註冊完帳號之後即可下載)。從下載完的檔案中,將libcudnn.so.6.XXX(具體可修改到自己下載的版本)檔案放在/usr/local/cuda/lib64/檔案目錄下。把目錄下的libcudnn.so通過mv  libcudnn.so  libcudnn5.so 改名為libcudnn5.so。(升級為cudnn6.0.21後caffe訓練可能會出錯,所以先保留原來的libcudnn.so.5.1.10相關檔案,有備無患。


(1)切換到該目錄下,刪除原本的軟連線
cd /usr/local/cuda/lib64/

sudo rm -rf libcudnn.so libcudnn.so.6

(2)然後修改檔案許可權,建立新的軟連線
sudo chmod u=rwx,g=rx,o=rx libcudnn.so.6.5.18
sudo ln -s libcudnn.so.6.5.18 libcudnn.so.6
sudo ln -s libcudnn.so.6 libcudnn.so
(3)最後進入tensorflow環境下的python測試成功
import tensorflow

遇到問題三:ImportError:/usr/local/cuda-8.0/lib64/libcudnn.so.6: file too short 

同樣按照上面的操作(刪除連線-----建立連線)就可以了。要是不能解決的話,可能就是路徑不在環境變數中。解決辦法如下:
新增環境變數
export
 LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
這個路徑是你libcudnn存放的位置,最後儲存更改的檔案後source  ~/.bashrc