這個配置只是測試性的配置,估計現在用這種型號顯卡來做並行計算的幾乎沒有了,不過里面的配置方法,很多還是值得借鑒的,最終是想應用在Geant4的並行計算上。
好了,各位觀眾,我開始表演了
首先,如果你已經安裝失敗很多次,那么,請確保你已經卸載現有的顯卡驅動和CUDA
1.如果已經安裝過cuda相關,且不成功(成功也就不看這個了),請看下面相關,如果沒安裝過,請跳過
1.1 卸載相關文件
在目錄(以cuda7.0版本為例):
/usr/local/cuda-7.0/bin
有CUDA自帶的卸載工具uninstallcudatoolkit_7.0.pl,使用命令:
shell sudo ./uninstall_cuda_toolkit_7.0.pl
卸載原來的NVIDIA驅動:
shell sudo apt-get remove nvidia*
這樣卸載Nvidia可能會導致圖形界面變粗變大(你懂的,嘿嘿) 另外一種卸載方式溫柔點:
shell sudo apt-get remove --purge nvidia-*
sudo apt-get install ubuntu-desktop
sudo rm /etc/X11/xorg.conf echo 'nouveau' | sudo tee -a /etc/modules
1.2 如果不像那么麻煩,重新安裝下系統,省時省力
如何安裝,請自行搜索哈,不贅述。
2.安裝驅動
安裝一下必要的編譯用的庫
sudo apt-get -y install gcc g++ build-essential automake linux-headers-$(uname -r) git gawk libcurl4-openssl-dev libjansson-dev xorg libc++-dev libgmp-dev python-dev
2.1 下載顯卡驅動
http://www.nvidia.com/Download/index.aspx?lang=en-us
我的測試顯卡比較LOW,大神們別噴, 一看,卧槽,還用200M series系列的,太垃圾。 咳咳,嗯嗯,我在做配置流程的記錄。(微笑臉),貼個圖 下載完了之后,應該是一個類似這樣的文件 NVIDIA-Linux-x86_64-340.104.run
-340.104未版本號,一般都用XXX來表示,你的XXX和我的,其他人的可能不一樣,所以不必方。
2.2 關閉ubuntu的圖形界面
在命令行里輸入
sudo service lightdm stop
2.3 關閉系統自帶的驅動(nouveau nvidia)
創建一個文件通過命令
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
並添加如下內容:
blacklist nouveau
options nouveau modeset=0
再更新一下
sudo update-initramfs -u
修改后需要重啟系統 sudo reboot
確認下Nouveau是已經關閉,使用命令: lsmod | grep nouveau
啥都沒有,恭喜你,成功干掉了它
重啟系統至init 3(文本模式)
sudo init 3
2.4 執行
chmod +x NVIDIA-Linux-x86_64-340.104.run
注意XXX可能不一樣喲,不要直接復制
./NVIDIA-Linux-x86_64-340.104.run
安裝的時候,不要安裝32bit的庫,只有這一個選擇右邊那個NO,就是32位的那個庫哈,別選,剩下的都選左。
2.5 安裝完驅動,測試一下
nvidia-smi
出現如下圖,就證明你安裝驅動成功了:
你是不是發現,那里有個NOT SUPPORTED,不要方,大師告訴你沒關系。
2.6 更新一下grub
sudo echo 'GRUB_CMDLINE_LINUX="nomodeset"' >> /etc/default/grub
sudo update-grub sudo nvidia-xconfig -a --cool-bits=28 --allow-empty-initial-configuration
2.7 重啟一下
打開圖形界面 sudo service lightdm start
不多說,不想看美女打馬賽克圖的可以不開
3安裝cuda
3.1當然是先下載呀,這還用說
來來來,網站在這,我下的cuda6.5,測試成功,有興趣的或者顯卡牛逼的,可以選擇高版本。 https://developer.nvidia.com/cuda-downloads 選擇合適的版本哦,別選太高,除非你新買的幾萬的新顯卡。
3.2 安裝
我的cuda的版本名字這樣的 cuda6.5 所以,你們按照自己下載的版本來對照。
cd && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_6.5-14_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1404_6.5-14_amd64.deb
rm cuda-repo-ubuntu1404_6.5-14_amd64.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-6-5 # skip reading the entire agreement by pressing ctrl+c
跳過前面要看的,可以按空格,也可以ctrl+c, 根據提示,全部同意就好了。
3.3 添加環境變量
sudo usermod -a -G video $USER
echo "" >> ~/.bashrc
echo "export PATH=/usr/local/cuda-6.5/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH" >> ~/.bashrc
3.4 然后重啟
sudo shutdown -r now
3.5 gcc 降級(相當重要)
16,04的gcc版本可能太高,不適合cuda6.5或者附近的版本,所以要降低gcc版本的等級
3.5.1 當然是下載gcc咯
這里下載的是gcc--4.7版本
sudo apt-get install gcc-4.7 g++-4.7
3.5.2 更換到cuda的路徑
cd /usr/local/cuda/bin
路徑可能不同,也不要照抄的說,找到有cuda 和cuda-6.5的地方就好了
3.5.3 在bin文件下,新建一個gcc文件夾,並連接相關gcc
sudo su
mkdir gcc
cd gcc
ln -s /usr/bin/gcc-4.7 gcc
ln -s /usr/bin/cpp-4.7 cpp
ln -s /usr/bin/g++-4.7 g++
exit
注意喲,輸入完exit,孩子啊當前目錄下哈,別搞錯目錄了,應該還在/usr/local/cuda/bin目錄下
3.5.4增加NVCC的變異路徑
sudo su
echo "compiler-bindir = /usr/local/cuda/bin/gcc" >> nvcc.profile
exit
3.5.5
再重啟一下
sudo reboot
4 到此就結束了,下面開始測試
在目錄 /usr/local/cuda/samples/1_Utilities/deviceQuery下 有個deviceQuery的例子,隨便測試一下,出現這樣,你就成功了
直接make,就能運行啦
當然,還可以測試其他例子,如,此路徑下 /usr/local/cuda/samples/3_Imaging/boxFilter
這個例子里面有個女的,一會很漂亮,一會跟打了馬賽克一樣模糊,大概可以學以致用,都懂的,哈哈
好了,美女看完了,該干正事了,編譯一下GPU版本的Geant4。。
(伸個懶腰,好困呀) 明天在變異吧,呸,不對,今天早上在編譯吧,睡覺~~
參考資料:
Ubuntu 16.04 install cuda 6.5
https://askubuntu.com/questions/841876/how-to-disable-nouveau-kernel-driver