第一次這么正式的寫(xiě)技術(shù)博客,一是鍛煉下寫(xiě)總結(jié)的能力,二來(lái)也算是由于自己看技術(shù)貼多卻從來(lái)沒(méi)有貢獻(xiàn)過(guò)自己的感到羞愧. 1.準(zhǔn)備 一.首先,運(yùn)行環(huán)境為ubuntu14.04 ,因此本文都假設(shè)大家已經(jīng)裝好了ubuntu14.04,另外,cuda時(shí)nvidia公司為自己的gpu設(shè)計(jì)的編程架構(gòu),因此
第一次這么正式的寫(xiě)技術(shù)博客,一是鍛煉下寫(xiě)總結(jié)的能力,二來(lái)也算是由于自己看技術(shù)貼多卻從來(lái)沒(méi)有貢獻(xiàn)過(guò)自己的感到羞愧.
1.準(zhǔn)備
一.首先,運(yùn)行環(huán)境為ubuntu14.04,因此本文都假設(shè)大家已經(jīng)裝好了ubuntu14.04,另外,cuda時(shí)nvidia公司為自己的gpu設(shè)計(jì)的編程架構(gòu),因此要使用cuda首先要保證自己的電腦具有nvidia的顯卡特別時(shí)要有cuda支持的顯卡.關(guān)于自己的顯卡怎么看:
~$ lspci|grep VGA
我的顯卡是NVIDIA GT540M系列得到的結(jié)果為:
01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 540M] (rev a1)
這一點(diǎn)看起來(lái)時(shí)小問(wèn)題,我一個(gè)哥們當(dāng)時(shí)就是沒(méi)有注意到這個(gè)問(wèn)題結(jié)果呼次呼吃裝了半天發(fā)現(xiàn)壓根裝不了,最后才發(fā)現(xiàn)自己的電腦的顯卡時(shí)AMD公司的
二.確定了了自己的電腦時(shí)NVIDIA的顯卡就可以進(jìn)行下面的工作了.
1.先到NVIDIA官網(wǎng)上下載最新版的cuda-6.5,由于現(xiàn)在新版的cuda已經(jīng)將cuda-toolkit和cudaSDK整合到一起了,所以只需要下載一個(gè)就行了
下面是我下載時(shí)的下載鏈接:
http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run
2.然后當(dāng)然還要下載nvidia的顯卡驅(qū)動(dòng),不過(guò)我比較不清楚的是為何還要再裝一遍驅(qū)動(dòng),而且裝的時(shí)候時(shí)先要將原來(lái)的驅(qū)動(dòng)先卸載,完全清除了再安裝新的驅(qū)動(dòng),可能時(shí)我想多了,linux本身沒(méi)有nvidia的顯卡驅(qū)動(dòng),但為什么又要再卸載后再安裝,反正很矛盾.
下面時(shí)nvidia_3.40的顯卡驅(qū)動(dòng)鏈接,我是再一篇帖子上看到cuda6.5好像能支持到的驅(qū)動(dòng)就直到3.40,所以不要下太高的版本
http://cn.download.nvidia.com/XFree86/Linux-x86_64/340.24/NVIDIA-Linux-x86_64-340.24.run
準(zhǔn)備工作做好了,需要先安裝顯卡驅(qū)動(dòng),然后再安裝cuda:
2.安裝顯卡驅(qū)動(dòng),下面是我看到的比較簡(jiǎn)單的方法:
1.下載顯卡驅(qū)動(dòng),這步已經(jīng)再準(zhǔn)備工作階段做好了.
2.編輯blacklist.conf。
sudo gedit /etc/modprobe.d/blacklist.conf
添加以下部分并保存:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
(這里有一行空格)
3. 刪除之前所安裝的nVidia驅(qū)動(dòng)。
sudo apt-get remove --purge nvidia-*(需要清除干凈)
sudo apt-get remove --purge xserver-xorg-video-nouveau
4. 重啟電腦。
5. 按Ctrl + Alt +F1到第一控制臺(tái)(+F7是回到xservers)。
6. 輸入用戶名和密碼后,登錄后執(zhí)行(數(shù)字不能用小鍵盤(pán)輸入):
sudo /etc/init.d/gdm stop或者
sudo /etc/init.d/lightdm stop
7. 進(jìn)入驅(qū)動(dòng)所在的文件夾,安裝驅(qū)動(dòng)(這里有個(gè)小技巧,只需要輸入NVIDIA加tab鍵就行了,文件名可以全部補(bǔ)全,不要說(shuō)我太low,以前我還真不知道,當(dāng)然也可先把驅(qū)動(dòng)名字改為簡(jiǎn)單的,自己能認(rèn)識(shí)的)。
sudo sh NVIDIA-Linux-x86_64-340.24.run
報(bào)錯(cuò)the distribution-provided pre-install script failed!不必理會(huì),繼續(xù)安裝;
8.啟動(dòng)GDM :
sudo /etc/init.d/gdm restart或者
sudo /etc/init.d/lightdm restart
9.重啟電腦。
sudo reboot
10.可能在詳細(xì)信息里面顯卡選項(xiàng)顯示未知,可用以下手法:
sudo apt-get install mesa-utils
本人在按照上面的方法安裝的時(shí)候,sudo /etc/init.d/gdm stop或者sudo /etc/init.d/gdm restart都沒(méi)有找到文件,可能時(shí)系統(tǒng)的問(wèn)題吧,不必管,這里第6步和第8步使用sudo /etc/init.d/lightdm stop和sudo /etc/init.d/lightdm restart就行了.
3.安裝cuda,這也是我看到的比較簡(jiǎn)單的安裝方法
1.安裝cuda-6.5
進(jìn)入剛剛下載的cuda-6.5所在的文件夾執(zhí)行
sh cuda_6.5.14_linux_64.run
然后就是耐心的等待安裝的完成
2.配置環(huán)境變量
ubuntu的環(huán)境變量配置文件再 ~/home/用戶名/.bashrc或者/etc/bash.bashr或者/etc/profile三個(gè)文件中,具體的區(qū)別好像就是全局啊,什么的,反正就是權(quán)限和作用范圍不一樣了,可能還有別的區(qū)別,因此只需要使用gedit打開(kāi)編輯其中一個(gè)就行了,這里為了保險(xiǎn)還是使用大家都用的的.
具體執(zhí)行以下命令:
:~$ sudo gedit .bashrc
在文件末尾加上,:
$ export PATH=/usr/local/cuda-6.5/bin:$PATH
$ export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH
我的系統(tǒng)是64位的所以是用的lib64,當(dāng)然再下載,對(duì)了忘記說(shuō)了,對(duì)于不同的系統(tǒng)再下載驅(qū)動(dòng)時(shí)也要注意,不然白下了,
然后;
~$ source .bashrc
使得環(huán)境變量配置生效
3.編譯sdk的sample
下面不是我的是別人的,我的也是這樣的,但是不好截圖,就沒(méi)有貼了
完成后編譯Sample文件, 整個(gè)過(guò)程大概10分鐘左右
cd /usr/local/cuda-6.5/samples sudo make
全部編譯完成后, 進(jìn)入 samples/bin/x86_64/linux/release, sudo下運(yùn)行deviceQuery
sudo ./deviceQuery
如果出現(xiàn)下列顯卡信息, 則驅(qū)動(dòng)及顯卡安裝成功:
./deviceQuery Starting... CUDA Device Query (Runtime API) version (CUDART static linking) Detected 1 CUDA Capable device(s) Device 0: "GeForce GTX 670" CUDA Driver Version / Runtime Version 6.5 / 6.5 CUDA Capability Major/Minor version number: 3.0 Total amount of global memory: 4095 MBytes (4294246400 bytes) ( 7) Multiprocessors, (192) CUDA Cores/MP: 1344 CUDA Cores GPU Clock rate: 1098 MHz (1.10 GHz) Memory Clock rate: 3105 Mhz Memory Bus Width: 256-bit L2 Cache Size: 524288 bytes Maximum Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096) Maximum Layered 1D Texture Size, (num) layers 1D=(16384), 2048 layers Maximum Layered 2D Texture Size, (num) layers 2D=(16384, 16384), 2048 layers Total amount of constant memory: 65536 bytes Total amount of shared memory per block: 49152 bytes Total number of registers available per block: 65536 Warp size: 32 Maximum number of threads per multiprocessor: 2048 Maximum number of threads per block: 1024 Max dimension size of a thread block (x,y,z): (1024, 1024, 64) Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535) Maximum memory pitch: 2147483647 bytes Texture alignment: 512 bytes Concurrent copy and kernel execution: Yes with 1 copy engine(s) Run time limit on kernels: Yes Integrated GPU sharing Host Memory: No Support host page-locked memory mapping: Yes Alignment requirement for Surfaces: Yes Device has ECC support: Disabled Device supports Unified Addressing (UVA): Yes Device PCI Bus ID / PCI location ID: 1 / 0 Compute Mode: < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) > deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = GeForce GTX 670 Result = PASS
至此cuda6.5安裝就完成了.
有時(shí)間再把安裝opencv和cuda-convnet2的配置的技術(shù)總結(jié)下!
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com