主頁(yè) > 知識(shí)庫(kù) > Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)

Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)

熱門(mén)標(biāo)簽:千陽(yáng)自動(dòng)外呼系統(tǒng) 平頂山外呼系統(tǒng)免費(fèi) 原裝電話機(jī)器人 江蘇客服外呼系統(tǒng)廠家 清遠(yuǎn)360地圖標(biāo)注方法 400電話申請(qǐng)服務(wù)商選什么 工廠智能電話機(jī)器人 在哪里辦理400電話號(hào)碼 西藏智能外呼系統(tǒng)五星服務(wù)

先說(shuō)下自己之前的環(huán)境(都是Linux系統(tǒng),差別不大):

  • Centos7.6
  • NVIDIA Driver Version 440.33.01(等會(huì)需要更新驅(qū)動(dòng))
  • CUDA10.1
  • Pytorch1.6/1.7

提示,如果想要保留之前的PyTorch1.6或1.7的環(huán)境,請(qǐng)不要卸載CUDA環(huán)境,可以通過(guò)Anaconda管理不同的環(huán)境,互不影響。但是需要注意你的NVIDIA驅(qū)動(dòng)版本是否匹配。

在這里能夠看到官方給的對(duì)應(yīng)CUDA版本所需使用驅(qū)動(dòng)版本。

通過(guò)上表可以發(fā)現(xiàn),如果要使用CUDA11.1,那么需要將顯卡的驅(qū)動(dòng)更新至455.23或以上(Linux x86_64環(huán)境)。由于我之前的驅(qū)動(dòng)版本是440.33.01,那么肯定不滿足,所以需要更新下顯卡的驅(qū)動(dòng)。通過(guò)以下指令可以查看你電腦上的驅(qū)動(dòng)版本:

nvidia-smi

如果你的驅(qū)動(dòng)版本是滿足的,那么可以直接跳到創(chuàng)建Pytorch1.8虛擬環(huán)境章節(jié)。

更新驅(qū)動(dòng)

卸載舊驅(qū)動(dòng)

我之前安裝的是NVIDIA-440的版本,找到之前下載的安裝程序,然后打開(kāi)終端通過(guò)以下指令進(jìn)行卸載:

sh ./NVIDIA-Linux-x86_64-440.33.01.run --uninstall

安裝新驅(qū)動(dòng)

1)下載驅(qū)動(dòng),直接去NVIDIA官網(wǎng)下載:https://www.nvidia.cn/Download/index.aspx?lang=cn

根據(jù)你的GPU型號(hào)以及操作信息選擇對(duì)應(yīng)的驅(qū)動(dòng),注意CUDA Toolkit11版的當(dāng)前可選的只有11.0和11.2,而我們要裝的是11.1所以選擇11.2即可。

2)關(guān)閉Xserver服務(wù) (如果沒(méi)有安裝桌面系統(tǒng)可以跳過(guò))
我的桌面系統(tǒng)是gdm(GNOME Display Manager)類(lèi)型的,通過(guò)systemctl可以看到:

systemctl status gdm.service

顯示結(jié)果:

● gdm.service - GNOME Display Manager
Loaded: loaded (/usr/lib/systemd/system/gdm.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-01-22 09:27:06 CST; 1 months 22 days ago
Process: 32347 ExecStartPost=/bin/bash -c TERM=linux /usr/bin/clear > /dev/tty1 (code=exited, status=0/SUCCESS)
Main PID: 32344 (gdm)
Tasks: 22
CGroup: /system.slice/gdm.service
├─32344 /usr/sbin/gdm
└─32357 /usr/bin/X :0 -background none -noreset -audit 4 -verbose -auth /run/gdm/auth-for-gdm-mBzawN/databa...

Jan 22 09:27:06 localhost.localdomain systemd[1]: Starting GNOME Display Manager...
Jan 22 09:27:06 localhost.localdomain systemd[1]: Started GNOME Display Manager.

關(guān)閉gdm服務(wù):

systemctl stop gdm.service

注意,如果還開(kāi)啟了類(lèi)似VNC遠(yuǎn)程桌面的服務(wù)也要記得關(guān)閉。

3)安裝新版本驅(qū)動(dòng)

sh ./NVIDIA-Linux-x86_64-460.32.03.run 

4)檢查nvidia服務(wù)
通過(guò)以下指令能夠看到當(dāng)前主機(jī)上的nvidia驅(qū)動(dòng)版本以及所有可用GPU設(shè)備信息。

nvidia-smi

5)再次開(kāi)啟桌面服務(wù)、VNC等
如果不是gdm或者不使用桌面環(huán)境可以跳過(guò)此步驟

systemctl start gdm.service

創(chuàng)建PyTorch1.8虛擬環(huán)境

為了不同版本之間的環(huán)境互相隔離,強(qiáng)烈建議使用Anaconda的虛擬環(huán)境。其實(shí)使用起來(lái)也非常簡(jiǎn)單:

創(chuàng)建虛擬環(huán)境,這里我創(chuàng)建了一個(gè)名為torch18的虛擬環(huán)境,并且創(chuàng)建python3.8的編譯環(huán)境。

conda create -n torch18 python=3.8

安裝完成后,激活虛擬環(huán)境

conda activate torch18

接著安裝點(diǎn)常用的包,這里直接通過(guò)requirements.txt批量安裝(不需要可以跳過(guò))

pip install -r requirements.txt

requirements.txt文件里可以是你常用的一些包,例如:

numpy==1.17.0
matplotlib==3.2.1
lxml==4.6.2
tqdm==4.42.1

如果需要退出虛擬環(huán)境,執(zhí)行以下指令即可:

conda deactivate

安裝PyTorch1.8

在線安裝

進(jìn)入PyTorch官網(wǎng):https://pytorch.org/

我們通過(guò)選擇自己的系統(tǒng)類(lèi)型、安裝方式以及CUDA的版本可以得到對(duì)應(yīng)的安裝指令。官方默認(rèn)會(huì)順帶安裝torchvision和torchaudio但我只需要torchvision所以通過(guò)以下指令安裝 (注意,要進(jìn)入對(duì)應(yīng)的虛擬環(huán)境安裝,例如上面的torch18環(huán)境)

pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 -f https://download.pytorch.org/whl/torch_stable.html

安裝完成后就可以使用了,不需要在單獨(dú)安裝CUDA,并且不會(huì)影響之前安裝的CUDA版本。

下面進(jìn)行簡(jiǎn)單的測(cè)試:

首先在終端輸入python進(jìn)入python環(huán)境:

pyhton

然后導(dǎo)入torch包,查看cuda是否可用:

import torch
torch.cuda.is_available()

如果打印的是True表示成功

離線安裝

有些時(shí)候,可能你的設(shè)備無(wú)法連接外網(wǎng),此時(shí)需要提前準(zhǔn)備好需要安裝的whl文件,那么我們這里就以torchtorchvision為例(注意安裝torch前需要提前安裝好numpy包)。剛剛我們?cè)诰€安裝時(shí)發(fā)現(xiàn)安裝指令最后有個(gè)網(wǎng)址,https://download.pytorch.org/whl/torch_stable.html,沒(méi)錯(cuò)就是官方存放所有的安裝包,所以我們可以直接去那里下載。

我們?cè)谶@里可以找到我們需要的torch-1.8.0+cu111-cp38-cp38-linux_x86_64.whl以及torchvision-0.9.0+cu111-cp38-cp38-linux_x86_64.whl兩個(gè)文件即可。注意,cu111代表CUDA11.1,cp38表示python3.8的編譯環(huán)境,linux_x86_64表示x86的平臺(tái)64位操作系統(tǒng)。下載完成后,我們將這兩個(gè)文件傳入你的離線主機(jī)(服務(wù)器)中。接著在保存這兩個(gè)文件夾的目錄下打開(kāi)終端:

進(jìn)入對(duì)應(yīng)虛擬環(huán)境

conda activate torch18

安裝torch

pip install torch-1.8.0+cu111-cp38-cp38-linux_x86_64.whl

安裝torchvison

pip install torchvision-0.9.0+cu111-cp38-cp38-linux_x86_64.whl

安裝完成后進(jìn)行簡(jiǎn)單的測(cè)試:

首先在終端輸入python進(jìn)入python環(huán)境:

pyhton

然后導(dǎo)入torch包,查看cuda是否可用:

import torch
torch.cuda.is_available()

如果打印的是True表示成功

通過(guò)docker安裝

在有些情況下是需要使用docker來(lái)跑深度學(xué)習(xí)環(huán)境的(現(xiàn)在很多大公司都是使用paas平臺(tái)來(lái)部署的)。那么我們就需要使用pytorch官方的docker鏡像了。我們可以在docker hub上去搜索相關(guān)鏡像,https://registry.hub.docker.com/。下圖是我搜索的pytorch字段的結(jié)果(點(diǎn)擊Tags后)。


我們可以看到當(dāng)前最新的docker 鏡像有pytorch/pytorch:1.8.0-cuda11.1-cudnn8-develpytorch/pytorch:1.8.0-cuda11.1-cudnn8-runtime,對(duì)于普通開(kāi)發(fā)者下載pytorch/pytorch:1.8.0-cuda11.1-cudnn8-runtime就行了。關(guān)于安裝docker的過(guò)程這里不贅述。

1)我們直接通過(guò)以下指令就能pull這個(gè)鏡像了

docker pull pytorch/pytorch:1.8.0-cuda11.1-cudnn8-runtime

2)注意,在啟動(dòng)鏡像前需要確保已安裝NVIDIA Container Toolkit,否則會(huì)報(bào)錯(cuò)(若已安裝可直接跳過(guò)此步驟):

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \

   curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo

安裝NVIDIA Container Toolkit,參考官方文檔:https://github.com/NVIDIA/nvidia-docker
這里以Centos7為例:

首先根據(jù)你的系統(tǒng)類(lèi)型以及版本下載對(duì)應(yīng).repo文件到/etc/yum.repos.d

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \

   curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo

清空yum的過(guò)期緩存數(shù)據(jù)(如果不是root用戶需要加sudo)

yum clean expire-cache

安裝NVIDIA Container Toolkit(如果不是root用戶需要加sudo)

yum install -y nvidia-docker2

重啟docker服務(wù)(如果不是root用戶需要加sudo)

systemctl restart docker

3)通過(guò)docker啟動(dòng)pytorch1.8.0容器

docker run --gpus all --rm -it --ipc=host pytorch/pytorch:1.8.0-cuda11.1-cudnn8-runtime

4)進(jìn)入容器后可以通過(guò)nvidia-smi看到所有的GPU設(shè)備信息

5)接著進(jìn)入python環(huán)境簡(jiǎn)單測(cè)試下pytorch能否正常調(diào)用GPU(打印True為成功)

import torch
torch.cuda.is_available()

到此這篇關(guān)于Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Linux安裝Pytorch GPU 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • pytorch 如何用cuda處理數(shù)據(jù)
  • pytorch model.cuda()花費(fèi)時(shí)間很長(zhǎng)的解決
  • pytorch中.to(device) 和.cuda()的區(qū)別說(shuō)明
  • PyTorch CUDA環(huán)境配置及安裝的步驟(圖文教程)
  • 將pytorch的網(wǎng)絡(luò)等轉(zhuǎn)移到cuda

標(biāo)簽:天水 隨州 日照 西安 白城 安慶 錦州 股票

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)》,本文關(guān)鍵詞  Linux,安裝,Pytorch1.8GPU,CUDA11.1,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章