1 ubuntu18.04
1.1 win10安裝ubuntu18.04雙系統
參考這個安裝教程,大概可以分爲以下三步:
1.1.1 磁盤管理
創建空白分區,留出ubuntu系統要使用的空間。
1.1.2 製作u盤啓動盤
下載ubuntu desktop。
下載軟碟通。
寫入硬盤映像。
1.1.3 u盤安裝
進入bios設置usb啓動,不同計算機的快捷鍵不同,自行搜索。
插入u盤,重啓計算機。
安裝ubuntu,並搞定基本設置。
1.2 卸載ubuntu
這一步本來可以沒有,但在之後安裝cuda的過程中,出過許多錯誤踩過太多的坑(sad),把系統搞得亂七八糟,一氣之下就重裝ubuntu了。
網上教程很多,比較高級的是在命令行裏搞,但我水平不行呀,就偷懶找了個最簡單的,看這裏。
1.2.1 EasyUEFI
免費版的就可以。進入管理EFI啓動項,選中ubuntu並點擊刪除。
這個軟件真的不錯,可以把usb啓動搞到windows之前,這樣就不用再去bios設置了,方便之後重裝雙系統。
1.2.2 磁盤管理
把之前所分配的空間“刪除卷”進行釋放。
這麼簡單幾步就能卸載ubuntu系統了,然後又可以愉快的重新安裝雙系統了呢。之後遇到的坑太多,我在卸載和重裝之間搞了好幾輪,簡直不想再回憶了(哇哇大哭)。
2 cuda10.2
一開始根據官方指南,但是不成功。
在網上看了許多教程,發現方法挺多的,試了一些,但也不行,還搞不清楚原因。
最後成功的步驟大多數是參考這一篇。
2.1 bios禁用secure boot
這一步挺重要的,即使官方指南沒有。
同樣地,不同計算機的設置方式不同,自行搜索。
2.2 相關信息查詢
這個跟着官方指南來就行了。我查了以下幾項:
lspci | grep -i nvidia
uname -m && cat /etc/*release
gcc --version
uname -r
有什麼不對勁的地方要補救。比如我遇到的情況是缺gcc,就根據提示自己裝了gcc。
2.3 安裝nvidia驅動
打開終端,輸入lshw -c video
。
在configuration那裏的driver可以看到目前的顯卡驅動,默認的是nouveau。
2.3.1 卸載之前的驅動
第一次安裝不需要這一步,如果之後安裝的版本不對或者有問題,重新安裝之前需要先卸載。
sudo apt-get remove --purge nvidia*
2.3.2 禁用nouveau
一定要先禁用默認驅動:
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
填寫禁用內容並保存:
blacklist nouveau
options nouveau modeset=0
更新配置文件:
sudo update-initramfs -u
reboot
重啓計算機,檢查禁用是否生效:
lsmod | grep nouveau
若無輸出,則說明生效。
或者lshw -c video
,發現driver不見了。
2.3.3 安裝nvidia
安裝方法很多,我見過的就有三種,但最後成功的是ppa。
添加ppa
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
查詢合適的版本
ubuntu-drivers devices
在末尾帶有recommended的版本就是要安裝的版本。目前我這裏的情況是440。
安裝並重啓
sudo apt-get install nvidia-driver-440
sudo reboot
查看安裝情況
sudo nvidia-smi
sudo nvidia-settings
或者lshw -c video
。
2.4 安裝cuda
2.4.1 下載cuda
根據系統信息,去官網下載runfile:
wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
2.4.2 安裝依賴庫
爲什麼要下載這個我也不清楚,我看的教程也不是很清楚(禁止套娃),反正下載就是了。
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
2.4.3 運行runfile
sudo sh cuda_10.2.89_440.33.01_linux.run
重要!!!!在安裝過程中會提示是否需要安裝顯卡驅動,在這裏要選擇n,其他的選擇y。
2.4.4 環境配置
sudo gedit ~/.bashrc
打開了一個配置文件,在末尾添加信息並保存:
export PATH=/usr/local/cuda-10.2/bin:/usr/local/cuda-10.2/NsightCompute-2019.1${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
最後執行:
source ~/.bashrc
2.5 測試
查看安裝版本:
nvcc -V
cat /usr/local/cuda/version.txt
還可以用例子來測試,這是其中之一。
cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
最後的result是pass,則說明成功!!
3 cudnn7.6.5
cudnn是一個常見的神經網絡層加速庫文件,其能夠很大程度的把加載到顯卡上的網絡層數據進行優化計算。
GPU, CUDA,cuDNN三者的關係總結
這個就比較簡單了,下載安裝即可,看這裏。
- 進入官網並註冊登錄。
- 選擇合適的版本,並下載cuDNN Library for Linux。
- 解壓tgz文件。
- 進入目錄打開終端:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
- 查看版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2