linux安装pytorch教程,centos下通过conda安装pytorch
一、安裝anaconda
anaconda安裝簡(jiǎn)單,只要確定自己的系統(tǒng)即可,
二、確定自己的系統(tǒng)版本
我的是centos
cat /etc/redhat-release
查看linux系統(tǒng)方法:
# 方法一
cat /proc/version
# 方法二
lsb_release -a
# 方法三
cat /etc/issue
# 方法四
cat /etc/redhat-release
三、確定自己的CUDA版本
什么是cuda:
CUDA(ComputeUnified Device Architecture),是顯卡廠商N(yùn)VIDIA推出的運(yùn)算平臺(tái)。 CUDA是一種由NVIDIA推出的通用并行計(jì)算架構(gòu),該架構(gòu)使GPU能夠解決復(fù)雜的計(jì)算問(wèn)題
簡(jiǎn)單說(shuō)強(qiáng)大的芯片如果只是作為顯卡就太浪費(fèi)了,因此N卡廠商推出CUDA,讓顯卡可以用于圖像計(jì)算以外的目的
什么是cudnn:(注意:CUDA和CuDNN一般都是結(jié)伴而行,如果需要CUDA,必然會(huì)需要CuDNN)
CUDA看作是一個(gè)工作臺(tái),上面配有很多工具,如錘子、螺絲刀等。cuDNN是基于CUDA的深度學(xué)習(xí)GPU加速庫(kù),有了它才能在GPU上完成深度學(xué)習(xí)的計(jì)算。它就相當(dāng)于工作的工具,比如它就是個(gè)扳手
但是CUDA這個(gè)工作臺(tái)買來(lái)的時(shí)候,并沒(méi)有送扳手。想要在CUDA上運(yùn)行深度神經(jīng)網(wǎng)絡(luò),就要安裝cuDNN,就像你想要擰個(gè)螺帽就要把扳手買回來(lái)。這樣才能使GPU進(jìn)行深度神經(jīng)網(wǎng)絡(luò)的工作,工作速度相較CPU快很多
cudnn下載解壓后cuda目錄下有下面內(nèi)容:
修改權(quán)限:
sudo cp include/cudnn.h /usr/local/cuda/include
sudo cp lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
Centos7安裝NVIDIA顯卡驅(qū)動(dòng)和CUDA10.1(以10.1為例):
先查看自己的linux上顯卡型號(hào):
lspci | grep -i nvidia
可見(jiàn)我的顯卡杠杠滴
:(下載與自己顯卡型號(hào)一致的驅(qū)動(dòng))
注意:在安裝顯卡驅(qū)動(dòng)的時(shí)候如果報(bào)錯(cuò)
ERROR: An NVIDIA kernel module 'nvidia-uvm' appears to already be loaded in your kernel. This may be because it is in use (for example, by the X server), but may also happen if your kernel was configured
我們需要查看是否有程序占用(如果存在占用,請(qǐng)停掉該程序)
lsof | grep nvidia.uvm
當(dāng)然顯卡驅(qū)動(dòng)也可以這樣安裝:(推薦)
曾經(jīng)自己花了兩天時(shí)間利用官網(wǎng)下載的驅(qū)動(dòng)來(lái)安裝,導(dǎo)致模型調(diào)用GPU出現(xiàn)error:CUDA error: all CUDA-capable devices are busy or unavailable(終究不知道原因)
sudo yum install nvidia-detect # 安裝檢查顯卡的程序
nvidia-detect -v # 查看需要的顯卡驅(qū)動(dòng)型號(hào)
yum -y install kmod-nvidia # 安裝驅(qū)動(dòng)
卸載驅(qū)動(dòng):
sudo yum -y install kmod-nvidia
如果通過(guò)官網(wǎng)下載驅(qū)動(dòng)安裝時(shí)找不到kernel,通過(guò)下面的方式安裝驅(qū)動(dòng)(確保kernel已經(jīng)安裝)
sudo ./NVIDIA-Linux-x86_64-430.40.run --kernel-source-path=/usr/src/kernels/3.10.0-514.el7.x86_64
檢查linux是否安裝了GPU
lspci | grep -i nvidia
lspci -v
發(fā)現(xiàn)下面的信息:,可以用sudo lspci -v
安裝 cuda 的時(shí)候,會(huì)詢問(wèn)是否安裝顯卡驅(qū)動(dòng),說(shuō)明 cuda 安裝程序里包含了的顯卡驅(qū)動(dòng);建議先不要安裝 cuda 里的顯卡驅(qū)動(dòng),待安裝完 cuda 后,執(zhí)行例子程序,如果報(bào)錯(cuò)再檢查顯卡驅(qū)動(dòng)是否正確,避免覆蓋原來(lái)的顯卡驅(qū)動(dòng)
安裝gcc、g++編譯器:先查看是否已經(jīng)安裝(gcc -v)
yum install gcc
yum install g++
安裝kernel-devel和kernel-headers:
yum install kernel-devel
yum install kernel-headers
注意這里的kernel要和自己的linux系統(tǒng)版本一致:可以使用uname -r查看自己的系統(tǒng)版本
uname -r
#3.10.0-514.el7.x86_64
有時(shí)候直接yum安裝的版本比較新,導(dǎo)致顯卡驅(qū)動(dòng)安裝失敗
sudo yum remove kernel-devel # 卸載新的
sudo rpm -i kernel-devel-3.10.0-514.el7.x86_64.rpm #下載安裝適合的版本
編輯grub文件
vim /etc/default/grub
在GRUB_CMDLINE_LINUX中的末尾(注意要包含在引號(hào)內(nèi))添加/rd.driver.blacklist=nouveau nouveau.modeset=0
隨后生成配置:
grub2-mkconfig -o /boot/grub2/grub.cfg
禁用nouveau:將blacklist nvidiafb注釋掉,并添加如下內(nèi)容,禁用的原因
blacklist nouveau
options nouveau modeset=0
更新配置并重啟:
sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
sudo dracut /boot/initramfs-$(uname -r).img $(uname -r)
reboot
重啟后確認(rèn)禁用了nouveau:
lsmod | grep nouveau
# 沒(méi)有內(nèi)容輸出表示禁用成功
賦予權(quán)限并安裝驅(qū)動(dòng)和CUDA-10.0:
./NNVIDIA-Linux-x86_64-430.50.run
./cuda_10.1.243_418.87.00_linux.run
查看安裝結(jié)果
nvidia-smi
總結(jié):大家可以
總結(jié)
以上是生活随笔為你收集整理的linux安装pytorch教程,centos下通过conda安装pytorch的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: cisco 交换机 定期 自动 备份配置
- 下一篇: linux中sh+$0,浅谈linux中