RTX 3080深度學習環境配置

2021-02-23 kaggle數據分析

找資料的時候感覺現在寫30XX系顯卡深度學習環境配置的文章還不太完善,所以記錄了自己的採坑經歷。

Why?

下面這張圖非常直觀,TITAN性能比2080ti強,3080的CUDA核心數差不多是TITAN的兩倍,內存少一些。目前3080顯卡7000出頭可以拿下,性價比非常不錯。

1 準備工作

上半年配了臺支持4GPU的機器,原計劃下半年訓練任務上來以後再加卡。但是30XX顯卡出來以後,2個3080理論上和4個2080ti性能差不多,現在再加2080ti就非常不理智了。所以拆了2080ti,買了兩個技嘉GeForce RTX™ 3080 GAMING OC 10G。

機器的硬體配置:

cpu:i9 10900x

主板:華碩PRIME X299-DELUXE Ⅱ

內存:16G * 4

電源:1600w

顯卡:技嘉3080 GAMING O10G * 2

這套配置換3080有很多問題,性價比極低,不太推薦大家按照這個配置來買,有很多更合理的配置單可以參考。

2 環境配置

深度學習環境配置要多花點時間了解自己機器的情況,免得踩太多的坑。先去github上看看別人採的坑https://github.com/pytorch/pytorch/issues?q=is%3Aissue+is%3Aopen+30。

機器的環境:

作業系統:Ubuntu18.04

Nvidia Driver:455

Python:3.7

Pytorch:>=  1.7.0

cuda:11.1.1

cudnn:8.0.5

版本號很重要,一定要看清楚,選不對小版本就是在瞎折騰。

2.1 Nvidia驅動安裝2.1.1 下載驅動

驅動用官方推薦的455,對GTX3080、GTX3090做了適配。

官網地址:https://www.nvidia.com/download/driverResults.aspx/163522/en-us


# 查看GPU
lspci -vnn | grep VGA

# 安裝官方推薦的驅動
sudo ./NVIDIA-Linux-x86_64-455.23.04.run --no-x-check -no-nouveau-check -no-opengl-files

驅動安裝這裡no-x、no-opengl很重要。

安裝好驅動以後reboot,查看驅動情況。

watch nvidia-smi

2.1.2 Tips

給Ubuntu裝Nvidia的驅動每次都會把我製得服服帖帖的,記錄顯卡驅動的安裝這裡踩過的幾個坑:

(1)ubuntu-drivers devices沒有輸出

以前安裝2080ti驅動的時候很簡單,更新系統,然後用ubuntu-drivers devices很簡單就裝上了。但是,3080插上以後,ubuntu-drivers devices沒有輸出。

開始我還以為是顯卡沒有插好,檢查了很多次。後來用下面這個命令是可以看到顯卡的。我想了一下應該是ubuntu還沒有更新對30XX顯卡的檢測。所以官方直接下載驅動安裝就好了。

lspci -vnn | grep VGA

> 1a:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2206] (rev a1) (prog-if 00 [VGA controller])
> 68:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2206] (rev a1) (prog-if 00 [VGA controller])

(2)沒有關閉x、opengl

第一次安裝驅動沒有關閉x和opengl,安裝失敗。

sudo ./NVIDIA-Linux-x86_64-455.23.04.runs

2.2 cuda、cudnn安裝

conda一鍵搞定

自己編譯的cuda性能會好一些,不想折騰的話可以用conda安裝。

conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch-nightly

conda會自動給我們安裝cuda和依賴庫,等一會(這裡等的時間和網速有比較大關係,我等了20分鐘)就好了。

安裝失敗的話檢查你的網絡,速度太慢就去掛個VP*。

這裡的cuda是11.0,和推薦的不一樣,但是我運行挺正常的。如果有問題,歡迎大家指出來,我修正。

2.2.1 cuda 11.1
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run
sudo sh cuda_11.1.0_455.23.05_linux.run

2.2.2 cudnn 8.0.5

這裡我並沒有看到有8.0.5版本的cudnn,只有8.0.4。很多人說8.0.4會安裝失敗,所以我用的是conda的一鍵安裝。

https://developer.nvidia.com/rdp/cudnn-archive

2.3 Pytorch安裝

pytorch一定要安裝nightly版本。

pip install numpy
pip install --pre torch torchvision torchaudio -f https://download.pytorch.org/whl/nightly/cu110/torch_nightly.html

2.4 測試

放別人的一小段測試代碼,看看有沒有正常調用顯卡進行訓練。

import torch
import torch.nn as nn
import torch.optim as optim

size = 128

class PayloadModel(nn.Module):
def __init__(self):
  super().__init__()

  self.layers = nn.Sequential( \
    *[nn.Conv1d(size, size, 1, 1, 0) for i in range(10)])
 
def forward(self, X):
  return self.layers(X)

device = "cuda:0"

model = PayloadModel().to(device)
optimizer = optim.Adam(model.parameters(), lr = 5e-4)

inputs = torch.randn(32, size, 256, device = device)
targets = torch.randn(32, size, 256, device = device)
loss = nn.MSELoss()

for step in range(10000000):
predicted = model(inputs)
L = loss(predicted, targets)
 
optimizer.zero_grad()
L.backward()
optimizer.step()

print("%d steps, loss = %f" % (step, L.item()), end = "\r")

結束語

30XX顯卡性能提升很多,性價比也不錯,現階段想配機器的同學這裡不推薦買20系列。但是torch和tensorflow穩定版支持30XX顯卡可能還需要一點時間,需要動手能力稍微強一點,網上寫30xx的文章還不多,遇到問題先看看github,留言討論也可以。

Reference

相關焦點

  • rtx3070ti和rtx3070及rtx3080性能對比評測,誰的性價比更高?
    繼rtx3080ti發布後不久,rtx3070ti於6月9日正式解禁,從型號命名規則上來看,rtx3070ti的性能應該是介於rtx3070
  • RTX 3080被炒到原價7倍,最高賣5000美元,英偉達官方道歉:將打擊黃牛搶購
    然而,在3080發售前,2080Ti沒有任何降價跡象,甚至還有玩家反饋說代理商藉此囤貨,價格反而更高。因為當年2080的價格比1080高出不少,代理商認為3080的價格也會居高不下。為了應對黃牛,英偉達表示會把官方商店遷移到了專用環境中,增加容量並提供更多的殭屍程序保護。比如,將CAPTCHA驗證碼加入到結帳流程中,防止機器人下單,還對商店API實施了附加的安全保護。至於有些用戶投訴黃牛用腳本購買多個RTX 3080的情況,英偉達已經手動取消了數百個訂單,並且今後還將繼續人工監控異常的購買情況。
  • [工作站] 2020 年 10 月的單 GPU 深度學習工作站配置指南
    隨著電腦硬體的性能提升、價格下降,搭建個人用深度學習工作站的支出越來越低,需求也會越來越大。因此從今年開始,每年的 5、10 月份均會發布最新的深度學習工作站的配置指南。隨著 NVIDIA 的新一代 Ampere 架構的 GeFore 30 系列顯卡的發布,在算力得到了極大提升的同時價格也大幅下降,花費不到 $1000 搭建一臺性能強大的深度學習工作站已經成為了可能。適逢 AMD 的新一代 Ryzen 處理器也在 10 月 8 日發布,硬體性能的提升毫無疑問會再次推動深度學習的熱潮。
  • 性能炸裂 深度評測RTX 3080新卡皇
    主要測試環境:CPU:AMD Ryzen 7 3700X ——主流高端CPU平臺(CPU天梯排名與Intel i7-10700K,i9-9820X相當)內存:8GB×4 = 32GB 海盜船DDR4-3600——主流內存搭配平臺實現四通道,內存容量符合主流玩家配置GPU:NVIDIA RTX 2080Super
  • [工作站] 2020 年 10 月的多 GPU 深度學習工作站配置指南
    本文接上一篇《2020 年 10 月的單 GPU 深度學習工作站配置指南》,探討多 GPU 工作站的搭建。很多在單 GPU 工作站中不甚重要的因素在多 GPU 工作站中變得舉足輕重。[4]搭建多 GPU 工作站的要點是避免顯卡過熱與電源過載,其它很多方面與單 GPU 工作站的原則相似,沒有提到的方面(包括顯卡的選擇)請參考《2020 年 10 月的單 GPU 深度學習工作站配置指南》。
  • 【腦吧小鋪】RTX3080顯卡銷售開始預定!
    目前來說AMD相同價位下能夠提供12核處理器,而且重要的是支持PCIE4.0,能夠完整發揮RTX3080 PCIE4.0的需求。而且考慮到4K遊戲的需求,以及RTX3080在深度學習的強大,這裡也稍微增加了CPU內存的大小。所以主機也可以做不僅僅遊戲可以做的工作。
  • 「黃牛」出動,英偉達RTX 3080瞬間售空,網友:等了個寂寞
    更有報導稱,每家實體店僅有 10 張 RTX 3080 在售。下圖為布魯克林一家 Micro Center 門店前排隊購買 RTX 3080 的顧客:當地時間 9 月 17 日,英偉達 RTX 3080 顯卡開售。但令人意外的是,這款標價 699 美元的 GPU 剛一開售就幾乎在所有地方銷售一空。
  • 英偉達3080Ti、3070Ti來了!繼續封鎖挖礦性能,網友:不信,空氣卡+1
    相比之下,3080 Ti減少了12GB的GDDR6X顯存,內存時鐘速度、內存帶寬也有所降低。作為RTX 2080 Ti和GTX 1080 Ti的後繼產品,RTX 3080 Ti的性能如何呢?英偉達給出了在幾款遊戲中,不同顯卡的性能對比情況,RTX 3080 Ti的性能可以達到RTX 2080 Ti的1.5倍。
  • 瞬間售罄的 RTX 3080 價格被炒到 7 倍,英偉達回應「八大問」,建議別買黃牛卡
    為應對這一挑戰,我們將 NVIDIA Store 轉移到專用環境中;更新代碼,提高伺服器負載;在結帳流程中增加驗證碼;為 NVIDIA Store API 增加額外的安全保護。更多的努力正在進行中。說好的 9 月 17 日早上 6 點 GeForce RTX 3080 正式開售,為什麼一到點原本顯示的「通知我」就變成了「缺貨」?
  • 英偉達RTX 3080 Ti遭曝光,預計5月初上市
    還有一些新的證據表明英偉達即將發布的Ampere產品,一名ID為Lok LOK的Facebook用戶洩漏了相關照片,顯示了準備從中國運往美國的MSI品牌顯卡,其中一個箱子看似包含了MSI尚未發布的GeForce RTX 3080 Ti Ventus 3X 12G OC,證明了GenForce RTX 3080 Ti5月上市的傳言。
  • 英偉達RTX 3080顯卡最大頻率達2.1 GHz,擁有19 Gbps的GDDR6X顯存
    NVIDIA GeForce RTX 3080將成為9月1日展示的幾種高端和發燒級遊戲選項之一,它將使用全新的Ampere GPU架構。根據洩漏,由於UserBenchmark上的條目是從8月15日開始的,因此NVIDIA GeForce RTX 3080仍在內部進行評估。該清單顯示了設備ID為「 10DE 2206」的Ampere顯卡。
  • 深度學習筆記15:ubuntu16.04 下深度學習開發環境搭建與配置
    作者:魯偉一個數據科學踐行者的學習日記。
  • RTX 3090 的深度學習環境配置指南:Pytorch、TensorFlow、Keras
    導讀本文介紹了作者使用RTX3090進行深度學習環境配置pytorch、tensorflow、keras等的詳細過程及代碼。筆者中山大學研究生,醫學生+計科學生的集合體,機器學習愛好者。最近剛入了3090,發現網上寫的各種環境配置相當混亂而且速度很慢。所以自己測了下速度最快的3090配置環境,歡迎補充!
  • 深度學習環境配置(一)-CUDA安裝
    一個人要碰到多少次重裝電腦系統,才能開始學會記錄怎樣配置環境?經常碰到電腦黑屏後只剩一個滑鼠的情況,第一次花了幾天時間找原因,什麼方法都試過了,最後都只能靠重裝系統來解決問題。雖然重裝系統一般不會影響非系統盤的文件,但是每次所有軟體都重新安裝簡直太麻煩了,尤其是anaconda,cuda等深度學習環境,簡章一路是坑。
  • [評測]ASUS ROG Strix LC GeForce RTX 3080 Ti OC 評測
    背後的原因, 除了受此前大半年間妖孽的市場供需環境的影響, 也是與NVIDIA已經在布局RTX 30的Ti系列升級款有關. 而伴隨著RTX 30的Ti系列升級款正式落定, ROG也在第一時間為這次全新發布的GeForce RTX 3080 Ti推出了這款ROG Strix LC GeForce RTX 3080 Ti OC.
  • Windows電腦深度學習環境超詳細配置指南
    要在 Windows 上開發模型,首先當然是配置開發環境。Kaggle Master 及機器學習實踐者 Abhinand 立足於自己的實踐,給出了一種簡單易行的 Windows 深度學習環境配置流程。本文將介紹在 Windows 計算機上配置深度學習環境的全過程,其中涉及安裝所需的工具和驅動軟體。出人意料的是,即便只是配置深度學習環境,任務也不輕鬆。你很有可能在這個過程中犯錯。
  • NVIDIA RTX3080 |老黃,你把核彈賣出了白菜價?
    Tensor core 的吞吐量各為上一代產品的 2 倍,它們分別對應 NVIDIA 開發的 RTX 實時光線追蹤技術和 DLSS 深度學習超級採樣技術,意味著 RTX3080 能有更好的光線追蹤性能和 AI 超採樣性能;RTX3080 採用了 10GB 的 GDDR6X 顯存,新的 GDDR6X 能夠將每個時鐘的數據速率翻倍,意味著顯存的單位性能再次提高,儘管顯存位寬為 320bit
  • 深度學習 | 介紹深度學習如何配置帶GPU電腦環境
    最近開始學習深度學習(Deep Learning)技術,特別是google的Tensorflow深度學習包開源後,深度學習已經成為大數據領域的重大計算革命
  • 從零開始深度學習第15講:ubuntu16.04 下深度學習開發環境搭建與配置
    深度學習大多用來處理圖片、語言、視頻和文本等大量非結構化數據,因而計算資源是進行深度學習開發的必要條件,想依靠windows單機玩深度學習恐怕不現實,基於linux和 gpu伺服器的深度學習開發環境配置就顯得尤為重要了。
  • 評測 | 耕升 GeForce RTX 3080 追風12GB顯卡重磅來襲
    2022年1月11日22:00點,NVIDIA發布GeForce RTX 3080 12GB顯卡,相比上一款RTX3080顯卡,新款擁有更多的顯存,而更多的顯存可以給玩家帶來更極致的遊戲體驗,作為NVIDIA核心AIC合作夥伴之一「耕升」,也同時發布這款全新升級的耕升 GeForce RTX 3080 追風G12GB 顯卡。