Ubuntu14.04+cuda 7.5+cudnn_v4+tensorflow安裝

系統環境:Ubuntu14.04 64位、Windows7 64位 雙系統 python

CUDA 版本: 7.5 

linux

總結一下,個人安裝建議是

  1.  必定要下一份CUDA官方的安裝文檔,按照它的步驟一步步慢慢來,不可偷懶。CUDA 7.5 官方安裝文檔下載
  2.  在安裝以前必定要詳細檢查本身的系統環境、軟件是否符合CUDA的安裝要求。不要存有僥倖心理,跳過檢查步驟。 
  3. 每進行一項操做,都檢查一下該項操做是否成功。若是沒成功,適時重啓電腦或者重啓終端,

一、安裝Ubuntu系統14.04

安裝完畢後不要更新系統。git

這條究竟是否有用我並不肯定。由於最初安裝時候老是遇到循環登陸的問題,網上的帖子廣泛反映是因爲更新系統致使,因此我後來的安裝都是在未更新系統的狀況下進行的。我只能說的是保證不更新系統並不能解決個人問題。github

二、檢查本身的電腦環境是否具有安裝CUDA的條件

a) 檢查本身的GPU是不是CUDA-capableubuntu

在終端中輸入: $ lspci | grep -i nvidia ,會顯示本身的NVIDIA GPU版本信息 
去CUDA的官網查看本身的GPU版本是否在CUDA的支持列表中api

b) 檢查本身的Linux版本是否支持 CUDA(Ubuntu 14.04沒問題)安全

c) 檢查本身的系統中是否裝了gccpython2.7

在終端中輸入: $gcc -version 能夠查看本身的gcc版本信息ide

d) 檢查是否安裝了kernel header和 package development工具

在終端中輸入: $uname -r 能夠查看本身的kernel版本信息 
在終端中輸入:$ sudo apt-get install linux-headers-$(uname -r) 
能夠安裝對應kernel版本的kernel header和package development

以上檢查個人電腦系統都知足要求,若是沒有知足要求的話,能夠參考cuda的官方文檔,裏面有詳細的針對每一個問題的解決方案。

三、 選擇安裝方式

CUDA提供兩種安裝方式:package manager安裝和runfile安裝 
我原本選的是 package manager 安裝,這種方法相對簡單,但嘗試了幾回都失敗。後來是轉換到runfile安裝才成功的。所以此處只介紹runfile安裝方式。

下載cuda安裝包:cuda官網下載,根據系統信息選擇對應的版本,runfile安裝的話最後一項要選擇 runfile文件

CUDA 7.5 下載連接

四、runfile安裝cuda

a) 禁用 nouveau

終端中運行:$ lsmod | grep nouveau,若是有輸出則表明nouveau正在加載。

Ubuntu的nouveau禁用方法: 
/etc/modprobe.d中建立文件blacklist-nouveau.conf,在文件中輸入一下內容

blacklist nouveau
options nouveau modeset=0

打開終端,運行

$ sudo update-initramfs -u

設置完畢能夠再次運行 $ lsmod | grep nouveau 檢查是否禁用成功,若是運行後沒有任何輸出,則表明禁用成功。通常重啓一下會發現禁用成功

b) 重啓電腦,到達登陸界面時,alt+ctrl+f1,進入text mode,登陸帳戶

c) 輸入 $ sudo service lightdm stop 關閉圖形化界面

d) 切換到cuda安裝文件的路徑,運行$ sudo sh cuda_7.5.18_linux.run

按照提示一步步操做

遇到提示是否安裝openGL ,選擇no(若是你的電腦跟我同樣是雙顯,且主顯是非NVIDIA的GPU須要選擇no,不然能夠yes)
其餘都選擇yes或者默認 
安裝成功後,會顯示installed,不然會顯示failed

e) 輸入 $ sudo service lightdm start 從新啓動圖形化界面。

Alt + ctrl +F7,返回到圖形化登陸界面,輸入密碼登陸。 
若是可以成功登陸,則表示不會遇到循環登陸的問題,基本說明CUDA的安裝成功了。

f) 重啓電腦。檢查Device Node Verification

檢查路徑~/dev下 有無存在名爲nvidia*(以nvidia開頭)的多個文件(device files)
若是沒有的話,能夠參考官方文檔裏的指導步驟,進行添加。

g) 設置環境變量。

終端中輸入 $ sudo gedit /etc/profile 
在打開的文件末尾,添加如下兩行。

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

h) 重啓電腦,檢查上述的環境變量是否設置成功。

終端中輸入 : $ env 
在輸出的環境變量中檢查有無上述 g) 中設置的變量,若是有則表明設置成功。


到此爲止,CUDA的安裝算是告一段落了。爲了保險起見,建議進行下述的檢查工做,確保真正的安裝成功。

五、 安裝完畢後的檢查工做。

a) 檢查 NVIDIA Driver是否安裝成功

終端輸入 :$ cat /proc/driver/nvidia/version 會輸出NVIDIA Driver的版本號

b) 檢查 CUDA Toolkit是否安裝成功

終端輸入 : $ nvcc -V 會輸出CUDA的版本信息

 二,安裝tensorflow

嘗試了兩種安裝方法:Pip install 和 Anaconda install:

PIP 是一個python包管理工具,主要是用於安裝  PyPI 上的軟件包。
利用PIP能夠一鍵安裝,自動下載.whl文件並解析而後自動下載下載相關依賴庫。可是國內鏈接上pypi的網站基本沒有速度。安裝以失敗了結。
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
以後換anaconda進行安裝,anaconda集成來不少python計算庫,而且集成來Spyder IDE 和 iphthon。
下載anaconda並安裝,建立一個conda 環境命名爲tensorflow。
 
conda create -n tensorflow python=2.7
 
激活tensorflow環境,在此環境下載GPU版本的tensorflow仍是得利用Pip。此時又回到了pip安裝的困境,一直沒速度,報time out錯誤。
 
source activate tensorflow
 
(tensorflow)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
 
解決方法:更換pypi源。國內推薦豆瓣源。
新建conf文件
 ~/.pip/pip.conf 
打開編輯
 
[global]
timeout = 6000
index-url = https://pypi.doubanio.com/simple
[install]
use-mirrors = true
mirrors = https://pypi.doubanio.com/simple
trusted-host = pypi.doubanio.com
而後就能夠享受秒速下完的快感了,一路安裝完成。
2,調試
在tensorflow環境下進入python,運行「Hello Tensorflow」代碼段驗證安裝完成。
接下來能夠跑一個mnist.
 
 python -m tensorflow.models.image.mnist.convolutional
可是立刻報錯,tensorflow IOError: CRC check failed 0x3c1ba7b1 != 0x53723de0L  CRC校驗失敗。
解決方法:進入convolutional.py所在目錄,修改文件權限,
 
sudo chmod 777 convolutional.py
 
而後將WORK_DIRECTORY的data修改成 /home/cheers/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/models/image/mnist/data 便可。
3,利用Spyder
大的工程還得利用IDE,在終端輸入spyder 進入IDE,發如今spyder下面不能import tensorflow。
解決方法:打開你的anaconda2文件夾,找到envs 打開tensorflow 將sitepack-ages裏面的東西都拷到到 anaconda2/lib/python2.7/sitepack-ages。先作好備份。
由於envs環境下才有tensorflow(tensorflow至關於python的一個計算包,相似於numpy),可是沒有spyder的啓動項。anaconda2/lib/python2.7/sitepack-ages這裏有spyder的啓動項,可是沒有tensorflow,因此須要將二者的sitepack-ages整合到一塊。而且拷到一起後,就不須要source activate tensorflow進入安全環境,直接進入python就能夠運行tensorflow。()
相關文章
相關標籤/搜索