Ubuntu 20.04 LTS 搭建GPU環(huán)境
勝利是不會向我們走來的,我們必須自己走向勝利。
Victory won't come to us unless we go to it.
入門人工智能領(lǐng)域,深度學(xué)習(xí)也好,強(qiáng)化學(xué)習(xí)也罷,如果沒有算力做支撐,還是早點(diǎn)洗洗睡吧,畢竟夢里啥都有!
因此,對于入門這個(gè)領(lǐng)域的本科生、研究生或準(zhǔn)備進(jìn)入工業(yè)界的相關(guān)群體來說,學(xué)會搭建GPU環(huán)境是必備的基本功技能之一。下面,我將盡可能詳細(xì)地說明,甚至重現(xiàn)每一步的結(jié)果截圖,以便有益于諸君。
進(jìn)入終端,執(zhí)行命令
nvidia-smi
可以看到,系統(tǒng)此時(shí)支持的CUDA版本為11.2
一、安裝CUDA
進(jìn)入CUDA安裝的官網(wǎng)
https://developer.nvidia.com/cuda-toolkit-archive
找到匹配的CUDA11.2
選擇Linux
選擇x86_64 ----Ubuntu----20.04(根據(jù)實(shí)際系統(tǒng)版本選擇)---deb(local)
系統(tǒng)信息查詢補(bǔ)充:
系統(tǒng)版本查看
lsb_release -a
Distributor ID: Ubuntu //類別是 Ubuntu
Description:Ubuntu 20.04.2 LTS //20年4月發(fā)布的長時(shí)間支持版本 // LTS 是 Long Term Support:長時(shí)間支持版本,支持周期長達(dá)三年至五年
Release 20.04 //發(fā)行日期或者發(fā)行版本號
Codename:focal //ubuntu的代號名稱
系統(tǒng)內(nèi)核版本和位數(shù)查看
其中x86_64就代表是64位的
我們回到主線任務(wù),點(diǎn)擊deb(local)后,CUDA官網(wǎng)便會給出對應(yīng)的下載安裝命令。
在系統(tǒng)中進(jìn)入下載文件夾
打開終端
開始逐條執(zhí)行命令
1wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin2sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-6003wget https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda-repo-ubuntu2004-11-2-local_11.2.2-460.32.03-1_amd64.deb4sudo dpkg -i cuda-repo-ubuntu2004-11-2-local_11.2.2-460.32.03-1_amd64.deb5sudo apt-key add /var/cuda-repo-ubuntu2004-11-2-local/7fa2af80.pub6sudo apt-get update7sudo apt-get -y install cuda
執(zhí)行到第3條命令時(shí),需要下載cuda本地deb安裝包 ,時(shí)間會稍長些
可能會出現(xiàn)“段錯(cuò)誤(核心已轉(zhuǎn)儲)”
我們執(zhí)行命令,查看目前資源限制的設(shè)定。
ulimit -a
可以看到堆棧的大小為8192k 大約8M多,我們將其存儲空間調(diào)大
執(zhí)行命令,將其調(diào)整為100M
ulimit -s 102400
調(diào)整后,將下載不完整的安裝包刪除
刪除后,再次運(yùn)行下載安裝包下載命令
發(fā)現(xiàn)仍然會出現(xiàn)此錯(cuò)誤
忽視此錯(cuò)誤,繼續(xù)安裝,發(fā)現(xiàn)報(bào)錯(cuò)
于是繼續(xù)刪除下載不完整的文件
執(zhí)行命令
ulimit -c unlimited
再次進(jìn)行下載
發(fā)現(xiàn),weget已經(jīng)可以下載到100成功解決“段錯(cuò)誤(核心已轉(zhuǎn)儲)”問題
繼續(xù)執(zhí)行安裝命令
發(fā)現(xiàn)公鑰沒有被安裝,根據(jù)提示安裝公鑰,執(zhí)行命令
sudo apt-key add /var/cuda-repo-ubuntu2004-11-2-local/7fa2af80.pub
繼續(xù)執(zhí)行安裝命令
執(zhí)行下一步更新apt-get源
執(zhí)行安裝cuda
安裝完成
查看cuda信息
nvcc -V
根據(jù)提示信息,安裝nvidia-cuda-toolkit工具套裝
sudo apt install nvidia-cuda-toolkit
輸入y繼續(xù)執(zhí)行
安裝時(shí)間較長
裝好后繼續(xù)執(zhí)行命令查看cuda
說明cuda安裝成功!
二、安裝cudnn
進(jìn)入cuDNN官網(wǎng)
https://developer.nvidia.com/cudnn
點(diǎn)擊下載cuDNN (需要登錄,未注冊的需要先注冊)
輸入郵箱
輸入密碼或注冊成功后,進(jìn)入下載頁面,記得勾選“I Agree... 同意協(xié)議選項(xiàng)”
選擇對應(yīng)CUDA 11.X的 cuDNN
找到Ubuntu對應(yīng)的3個(gè)deb安裝包,全部下載
下載成功后
先執(zhí)行命令,利用正則查看文件 模糊查詢lib開頭的(為了復(fù)制文件名)
ls |grep lib
開始安裝
1sudo dpkg -i libcudnn8_8.2.0.53-1+cuda11.3_amd64.deb2sudo dpkg -i libcudnn8-dev_8.2.0.53-1+cuda11.3_amd64.deb3sudo dpkg -i libcudnn8-samples_8.2.0.53-1+cuda11.3_amd64.deb
安裝runtime版
安裝dev開發(fā)版
安裝樣例代碼
測試cuDNN是否安裝成功
cuDNN的樣例代碼位置在/usr/src/cudnn_samples_v8(注意這里的v8指版本8,不同的cuda可能對應(yīng)不同的版本,有的是v7) ,我們可以通過編譯mnistCUDNN sample進(jìn)行驗(yàn)證
執(zhí)行命令,復(fù)制樣例到自己新建的lab文件夾
(1)先確定lab文件夾路徑
1cd ~2ls3cd lab4pwd
(2)開始復(fù)制并測試
1cp -r /usr/src/cudnn_samples_v8/ /home/yhl/lab
1cd /home/yhl/lab/cudnn_samples_v8/mnistCUDNN
進(jìn)行編譯
1make clean && make
出現(xiàn)錯(cuò)誤“FreeImage.h”
安裝libfreeimage3庫即可解決“FreeImage.h”沒有被發(fā)現(xiàn)的錯(cuò)誤。
1sudo apt-get install libfreeimage3 libfreeimage-dev
安裝完成
再次進(jìn)行編譯
1make clean && make
測試運(yùn)行
1./mnistCUDNN
出現(xiàn)Test passed ! 表示cuDNN已經(jīng)安裝成功并且能夠正常使用。
如果你在操作過程中遇到了什么問題,或有什么想法和建議(希望大家多提想法和建議,一起交流,一起進(jìn)步****~),在留言區(qū)留下你的足跡吧,看到后便會及時(shí)回復(fù)大家哦~