久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Ubuntu上如何安裝CUDA

162次閱讀
沒有評論

共計 6025 個字符,預計需要花費 16 分鐘才能閱讀完成。

本篇內容介紹了“Ubuntu 上如何安裝 CUDA”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

安裝過程:

一、安裝、熟悉 ubuntu16.04 系統

安裝軟件之前最好對 ubuntu 的命令行有一些基本的了解,像 sudo、cd、ls、nona、cat、chmod 等等,這樣能夠在安裝過程中省去很多不必要的麻煩。

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

1) 驗證自己的電腦是否有一個可以支持 cuda 的 gpu

你可以電腦的配置信息中找到顯卡的具體型號,如果你是雙系統,在 windows 下的設備管理器中也可以查到顯卡的詳細信息;
你也可以在 ubuntu 的終端中輸入命令:$ lspci | grep -i nvidia,會顯示出你的 nvidia gpu 版本信息,不過不是很詳細。

我的顯示為(geforcegt630m):

01:00.0 3d controller: nvidia corporation gf117m [geforce 610m/710m/810m/820m / gt 620m/625m/630m/720m] (rev a1)

然后去 cuda 的查看自己的 gpu 版本是否在 cuda 的支持列表中。

2) 驗證自己的 linux 版本是否支持 cuda(ubuntu 16.04 沒問題)

輸入命令:

$ uname -m   cat /etc/*release

結果顯示:

x86_64
distrib_id=ubuntu
distrib_release=16.04

……

3) 驗證系統是否安裝了 gcc

在終端中輸入:$  gcc –version    

結果顯示:

gcc (ubuntu 5.4.0-6ubuntu1~16.04.5) 5.4.0 20160609
……

若未安裝請使用下列命令進行安裝:

sudo apt-get install build-essential

4) 驗證系統是否安裝了 kernel header 和 package development

a、查看正在運行的系統內核版本:

在終端中輸入:$  uname –r

結果顯示:

4.10.0-40-generic

b、在終端中輸入:$  sudo apt-get install linux-headers-$(uname -r)

可以安裝對應 kernel 版本的 kernel header 和 package development

結果顯示:

……

升級了 0 個軟件包,新安裝了 0 個軟件包,要卸載 0 個軟件包,有 4 個軟件包未被升級。

表示系統里已經有了,不用重復安裝。

若以上各項驗證檢查均滿足要求,便可進行下面的正式安裝過程。如果沒有滿足要求的話,可以參考 cuda 的官方文檔,里面有詳細的針對每個問題的解決方案。

三、選擇安裝方式

cuda 提供兩種安裝方式:package manager 安裝和 runfile 安裝,package manager 安裝方式相對簡單一些,但是我在閱讀別人博客的過程中發現選擇這種方式在安裝過程中問題可能多一點,失敗的概率較大。為了減少不必要的麻煩我選擇 runfile 安裝方式。
下載 cuda 安裝包:cuda 官網下載,根據系統信息選擇對應的版本,runfile 安裝的話最后一項要選擇 runfile 文件。

下載完后,用 md5 檢驗,如果序號不和,得重新下載(由于當時沒有保存,這里我采用了別人的截圖,注意這里的 cuda 版本號,人家采用的 cuda_8.0)

輸入命令:$  md5sum cuda_9.0.176_linux.run

四、runfile 安裝 cuda

1) 禁用 nouveau 驅動

終端中運行:$  lsmod | grep nouveau,如果有輸出則代表 nouveau 正在加載。需要我們手動禁掉 nouveau。

ubuntu 的 nouveau 禁用方法:

a、在 /etc/modprobe.d 中創建文件 blacklist-nouveau.conf

輸入命令:$  sudo vi /etc/modprobe.d/blacklist-nouveau.conf (利用 vi 編輯器編輯和保存文件)

在文件中輸入一下內容:

blacklist nouveau
options nouveau modeset=0

b、執行:

$ sudo update-initramfs –u

c、再執行:

$ lsmod | grep nouveau

若無內容輸出,則禁用成功,若仍有內容輸出,請檢查操作,并重復上述操作。

注:vi 是 linux 終端下或控制臺下常用的編輯器,基本的操作方式為:vi / 路徑 / 文件名
例如:vi /etc/fstab 表示顯示 /etc/fstab 文件的內容。使用鍵盤上的 page up 和 page down 鍵可以上下翻頁;按下 insert 鍵,可以見到窗口左下角有“insert”字樣,表示當前為插入編輯狀態,這時從鍵盤輸入的內容將插入到光標位置;再按下 insert 鍵,左下角將有“replace”字樣,表示當前為替換編輯狀態,這時從鍵盤輸入的內容將替換光標位置的內容。編輯完內容后,按下 esc 鍵,并輸入“:wq”,然后回車就可以保存退出。
如果不想保存而直接退出,則按下 esc 鍵后,輸入“:q!”,然后回車即可。“wq”表示 write 和 quit,即保存退出;“q!”表示忽略修改強行退出。

以下操作建議手機拍照,建議把下載的 cuda_9.0.176_384.81_linux.run 文件重命名為 cuda.run 并移動到 home 文件夾下(為了安裝方便)

2) 重啟電腦,進入登錄界面的時候,不要登錄進入桌面(否則可能會失敗,若不小心進入,請重啟電腦),直接按 ctrl+alt+f1 進入文本模式(命令行界面),登錄賬戶。

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

4) 切換到 cuda 安裝文件的路徑:$  cd home/

運行 $ sudo sh cuda_7.5.18_linux.run
按照提示一步步操作

注:a、一定要按照提示)輸入相應字符,例如有的需要輸入 accept,有的需要輸入 yes;

       b、遇到提示是否安裝 opengl,選擇 no(如果你的電腦跟我一樣是雙顯,且主顯是非 nvidia 的 gpu 在工作需要選擇 no,否則可以 yes),其他都選擇 yes 或者默認即可。(如果您的電腦是雙顯卡且在這一步選擇了 yes,那么你極有可能安裝完 cuda 之后,重啟圖形化界面后遇到登錄界面循環問題:輸入密碼后又跳回密碼輸入界面。 

這是因為你的電腦是雙顯,而且用來顯示的那塊 gpu 不是 nvidia,則 opengl libraries 就不應該安裝,否則你正在使用的那塊 gpu(非 nvidia 的 gpu)的 opengl libraries 會被覆蓋,然后 gui 就無法工作了。)

安裝成功后,會顯示 installed,否則會顯示 failed。

5) 輸入 $ sudo service lightdm start 重新啟動圖形化界面。

同時按住 alt + ctrl +f7,返回到圖形化登錄界面,輸入密碼登錄。
如果能夠成功登錄,則表示不會遇到循環登錄的問題,基本說明 cuda 的安裝成功了。

如果你遇到了重復登陸情況,不用急著重裝系統,官方教程上有提及,原因上一步的注中有提及,在安裝 opengl 時你可能不注意選擇了 yes,請卸載 cuda, 然后重裝。
卸載:由于登陸進入不到圖形用戶界面(gui),但我們可以進入到文本用戶界面(tui)

在登陸界面狀態下,按 ctrl + alt + f1, 進入 tui
執行

$ sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
$ sudo /usr/bin/nvidia-uninstall

然后重啟

$ sudo reboot

重新安裝.run  再次安裝時請一定留意,在提示是否安裝 opengl 時,你的是雙顯卡應該選則 n。

6) 重啟電腦,檢查 device node verification。

執行

$ ls /dev/nvidia*

可能出現 a、b 兩種結果,請對號入座。

a、若結果顯示

/dev/nvidia0  /dev/nvidiactl     /dev/nvidia-uvm

或顯示出類似的信息,應該有三個(包含一個類似 /dev/nvidia-nvm 的),則安裝成功。

b、大多數結果可能會是這樣

ls: cannot access/dev/nvidia*: no such file or directory

或是這樣的,只出現

/dev/nvidia0  /dev/nvidiactl

a 中的一個或兩個,但沒有 /dev/nvidia-num,即文件顯示不全。

不用著急也不用急著重裝系統(我在安裝時就是這種情況),官方指導中有詳細的解決方案,但是我的方法和官方稍微有些出入。

首先要添加一個啟動腳本(添加啟動腳本的方法大致有兩種,我采用最直接的方法,另一種可以先創建一個文件然后通過 mv 的方式移動到啟動文件夾下,可自行百度)
執行

$ sudo vi /etc/rc.local

如果你是第一次打開這個文件,它應該是空的(除了一行又一行的 #注釋項外)。這文件的第一行是

#!/bin/sh -e

把 - e 去掉(這步很重要,否則它不會加載這文本的內容)
然后把下列內容除了 #!/bin/bash 外復制到其中,(before exit 0)保存退出。

#!/bin/bash
/sbin/modprobe nvidia
if [  $?  -eq 0 ]; then
# count the number of nvidia controllers found.
nvdevs=`lspci | grep -i nvidia`
n3d=`echo  $nvdevs  | grep  3d controller  | wc -l`
nvga=`echo  $nvdevs  | grep  vga compatible controller  | wc -l`
n=`expr $n3d + $nvga - 1`
for i in `seq 0 $n`; do
mknod -m 666 /dev/nvidia$i c 195 $i
mknod -m 666 /dev/nvidiactl c 195 255
exit 1
/sbin/modprobe nvidia-uvm
if [  $?  -eq 0 ]; then
# find out the major device number used by the nvidia-uvm driver
d=`grep nvidia-uvm /proc/devices | awk  {print $1} `
mknod -m 666 /dev/nvidia-uvm c $d 0
exit 1
fi

下次重啟時,你應該能直接看到 /dev 目錄下的三個 nvidia 的文件
輸入:$ ls /dev/nvidia*
結果顯示:/dev/nvidia0  /dev/nvidiactl       /dev/nvidia-uvm

成功!

7) 設置環境變量。

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

64 位系統:

export path=/usr/local/cuda-9.0/bin${path:+:${path}}
export ld_library_path=/usr/local/cuda-9.0/lib64\
 ${ld_library_path:+:${ld_library_path}}

32 位系統:

export path=/usr/local/cuda-9.0/bin${path:+:${path}}
export ld_library_path=/usr/local/cuda-9.0/lib\
 ${ld_library_path:+:${ld_library_path}}

保存文件,并重啟。因為 source /etc/profile 是臨時生效,重啟電腦才是永久生效。

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

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

a、驗證驅動版本

敲入

$ cat /proc/driver/nvidia/version

結果顯示

nvrm version: nvidia unix x86_64 kernel module 384.81 sat sep 2 02:43:11 pdt 2017
gcc version: gcc version 5.4.0 20160609 (ubuntu 5.4.0-6ubuntu1~16.04.5)

b、驗證 cuda toolkit

敲入

$ nvcc -v  會輸出 cuda 的版本信息

  如果是這樣的:

the program nvcc is currently not installed. you can install it by typing:
sudo apt-get install nvidia-cuda-toolkit

可能是環境配置沒有成功,請重復上述步驟 7)。

五、嘗試編譯 cuda 提供的例子

1)打開終端輸入:$  cd /home/xxx/nvidia_cuda-9.0_samples  其中 xxx 是你自己的用戶名,通過命令 cd 進入 nvidia_cuda-9.0_samples 目錄。

然后終端輸入:$ make

系統就會自動進入到編譯過程,整個過程大概需要十幾到二十分鐘,請耐心等待。如果出現錯誤的話,系統會立即報錯停止。

第一次運行時可能會報錯,提示的錯誤信息可能會是系統中沒有 gcc,

解決辦法就是通過命令重新安裝 gcc 就行,在終端輸入:$ sudo apt-get install gcc 安裝完 gcc 后,再 make 就正常了。

如果編譯成功,最后會顯示 finished building cuda samples,如下圖所示。

2)運行編譯生成的二進制文件。
編譯后的二進制文件 默認存放在 nvidia_cuda-9.0_samples/bin 中。
接著在上一個終端中輸入:$  cd /home/lxxx/nvidia_cuda-9.0_samples/bin/x86_64/linux/release  其中 xxx 是你自己的用戶名
然后在終端輸入:$ ./devicequery 

結果如下圖所示:看到類似如下圖片中的顯示,則代表 cuda 安裝且配置成功,其中 result = pass 代表成功, 若失敗 result = fail

3)最后再檢查一下系統和 cuda-capable device 的連接情況
終端輸入:$ ./bandwidthtest
看到類似如下圖片中的顯示,則代表成功

“Ubuntu 上如何安裝 CUDA”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-14發表,共計6025字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 丰镇市| 石台县| 阿拉善左旗| 同德县| 易门县| 峨眉山市| 正蓝旗| 博湖县| 沙湾县| 隆化县| 阿合奇县| 新兴县| 卢氏县| 怀仁县| 民丰县| 武汉市| 河东区| 稻城县| 阳曲县| 昌宁县| 科尔| 和顺县| 沅陵县| 岐山县| 多伦县| 安新县| 健康| 建湖县| 宁波市| 田林县| 连平县| 且末县| 德钦县| 象州县| 安福县| 鹿泉市| 彭水| 池州市| 沙湾县| 利辛县| 河东区|