ubuntu14.04 安裝 CUDA 7.5 / CUDA 8.0


原文轉自:http://blog.csdn.net/masa_fish/article/details/51882183

 

CUDA7.5和CUDA8.0的安裝過程是一毛一樣的。所以如果安裝CUDA8.0的同學,直接將下文中的所有7.5替換為8.0即可。


折騰了好多天,前后重裝了大概六、七次Ubuntu,終於上把CUDA安裝好了,被坑了好多次,也走了不少彎路。
第一次發帖,還請多指教。


【環境】
筆記本:ThinkPad T450 X86_64
顯卡:主顯 Intel HD Graphics 5500 ; 獨顯 NVIDIA GT 940M
系統環境:Ubuntu14.04 64位、Windows7 64位 雙系統
CUDA 版本: 7.5
其他:Ubuntu中不存在已經安裝的CUDA


先說說自己遇到的大坑吧,安裝完CUDA之后總是遇到登錄界面循環問題:輸入密碼后又跳回密碼輸入界面。嘗試了網上的多種說法無解,最終發現我的問題是出在雙顯卡這里。最后是在官方安裝文檔中找到了答案。

問題解決方案:
在安裝cuda時,會出現提示,詢問你是否需要安裝 openGL Libraries。如果你的電腦是雙顯,而且用來顯示的那塊GPU不是NVIDIA,則OpenGL Libraries就不應該安裝,否則不是NVIDIA的那塊GPU使用的OpenGL Libraries會被覆蓋,然后GUI就無法工作了。


先談談關於安裝CUDA的幾點感受吧

關於 CUDA的安裝,網上有特別多的安裝帖子,我在安裝的時候也參考了很多。你會發現網上很多的安裝帖子,一般只做十幾個操作就完事了。但是CUDA的官方安裝文檔卻非常冗長,有四十多頁,別覺得它是廢話,其實都是干貨。

網上的安裝帖子之所以精煉,是因為它只涵蓋了必須的安裝步驟,跳過了許多的檢查操作(例如:檢查電腦中是否已安裝CUDA需要依賴的軟件、是否已經卸載會與CUDA產生沖突的軟件)等。如果你足夠幸運,電腦里上恰好該有的有,不該有的沒有,那這么做沒問題,但通常情況下你並沒有那么走運。

CUDA這個東西需要依賴的、牽着的東西特別多,如果沒有做好檢查,則在安裝時候特別容易出現各種各樣的沖突,且一旦沖突發生,即使卸載CUDA也不能解決問題,只能重裝系統。
我最后就是參考CUDA的官方文檔安裝成功的。


總結一下,我的安裝建議是

1) 一定要下一份CUDA官方的安裝文檔,按照它的步驟一步步慢慢來,不可偷懶
CUDA 7.5 官方安裝文檔下載
2) 在安裝之前一定要詳細檢查自己的系統環境、軟件是否符合CUDA的安裝要求。不要存有僥幸心理,跳過檢查步驟
3) 每進行一項操作,都檢查一下該項操作是否成功

下面分享一下我的安裝步驟。基本跟CUDA的官方安裝文檔的操作是一致的,不同的地方都有特別注明。

安裝CUDA主要分三大環節。
一、安裝前的環境准備和檢查
二、安裝CUDA
三、安裝完的校驗。

1、安裝Ubuntu系統14.04

新安裝完的14.04系統會提示很多更新項。
網上有很多帖子說不建議更新,說更新過后會導致安裝CUDA發生系統界面循環登錄的問題。
但是我更新后,並沒有遇到任何問題。

2、檢查自己的電腦環境是否具備安裝CUDA的條件

a) 檢查自己的GPU是否是CUDA-capable

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

b) 檢查自己的Linux版本是否支持 CUDA(Ubuntu 14.04沒問題)

c) 檢查自己的系統中是否裝了gcc

在終端中輸入: $gcc –version 可以查看自己的gcc版本信息

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

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

以上檢查我的電腦系統都滿足要求,如果沒有滿足要求的話,可以參考cuda的官方文檔,里面有詳細的針對每個問題的解決方案。

3、 選擇安裝方式

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

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

CUDA 7.5 下載鏈接

PS: 一定要下載到英文文件夾(目錄不能含中文)

4、runfile安裝cuda

a) 禁用 nouveau

終端中運行:$ lsmod | grep nouveau,如果有輸出則代表nouveau正在加載。

(1)直接移除這個驅動(備份出來)

$ mv /lib/modules/4.4.0-31-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko  /lib/modules/4.4.0-31-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko.org

PS: 紅色部分每個版本是不一樣的,可以cd過去看一下是什么版本

(2)重新加載 

$ update-initramfs -u

(3)重啟

設置完畢可以再次運行 $ 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/cuda7.5/lib64

保存文件。

這里有點與官方安裝文檔稍有不同,需要說明:

官方文檔里說只需在終端中運行上述兩條export語句即可,但如果不將它們不寫入/etc/profile文件的話,這樣的環境變量在你退出終端后就消失了,不起作用了,所以寫入才是永久的做法。

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

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


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

5、 安裝完畢后的檢查工作。

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

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

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

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

c) 嘗試編譯cuda提供的例子

切換到例子存放的路徑,默認路徑是 ~/NVIDIA_CUDA-7.5_Samples
(即 /home/xxx/ NVIDIA_CUDA-7.5_Samples, xxx是你自己的用戶名)

然后終端輸入:$ make

如果出現錯誤的話,則會立即報錯停止,否則會開始進入編譯階段。
我的第一次運行時出現了報錯,提示的錯誤信息是系統中沒有gcc
然后在終端運行 $ sudo apt-get install gcc 安裝完gcc后 再make就正常了
整個編譯的時間持續比較長,耐心等待,大概十幾分鍾是需要的。

d) 運行編譯生成的二進制文件。

編譯后的二進制文件 默認存放在~/NVIDIA_CUDA-7.5_Samples/bin中。
切換路徑 : cd ~/NVIDIA_CUDA-7.5_Samples/bin/x86_64/linux/release
終端輸入 :$ ./deviceQuery

看到類似如下圖片中的顯示,則代表CUDA安裝且配置成功(congratulation!!)

這里寫圖片描述

再檢查一下系統和CUDA-Capable device的連接情況
終端輸入 : $ ./sandwidthTest
看到類似如下圖片中的顯示,則代表成功
這里寫圖片描述


最后祝大家都能順利安裝CUDA~~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM