仙尊脔到她哭h粗话h,小蜜桃3,亚洲天然素人无码专区,国产精品久久久久av,成人性生交大片免费

千鋒教育-做(zuo)有情懷、有良心、有品質(zhi)的職業(ye)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手(shou)機站(zhan)

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨(sui)時(shi)隨(sui)地免費學習(xi)課程

當前位(wei)置:首頁  >  技術干貨  > 如何搭建基于容器的深度學習環境

如何搭建基于容器的深度學習環境

來源:千鋒教育
發布人:xqq
時間: 2023-12-06 14:50:50 1701845450

歷史上,人工智能的概念幾經沉浮。如今,憑借低成本的存儲、高性能的算力和改進的訓練方法,舊的概念再次煥發出新的生機。以TensorFlow和PyTorch為代表的一眾深度學習框架的出現,更是將這個領域的門檻降到天下何人不煉丹的程度。

然而,深度學(xue)習靠框架,框架還要挑(tiao)CUDA。

技(ji)術的(de)飛速發(fa)展和訓練(lian)框架的(de)野蠻(man)迭代(dai)背(bei)后(hou),是一地不兼容的(de)版本號,和繞口(kou)令一般的(de)困境(jing)。

不同的PyTorch版本(ben)依賴不同的CUDA版本(ben)

不同(tong)(tong)的TensorFlow版(ban)本依(yi)賴不同(tong)(tong)的cuDNN版(ban)本

不(bu)同的(de)cuDNN版(ban)本(ben)也依賴不(bu)同的(de)CUDA版(ban)本(ben)

不同的(de)CUDA版(ban)本依賴不同的(de)NVIDIAGPU驅動版(ban)本

最后不同操(cao)作系統(tong)的不同版本只支持個別版本的GPU驅動

所(suo)以新手(shou)最(zui)常遇到的場景是,為了(le)運行(xing)一(yi)份最(zui)后更(geng)新于(yu)三年(nian)前的、散發著古(gu)(gu)早味的、據說(shuo)很(hen)厲害(hai)的代(dai)碼,降級并重(zhong)裝整個操作系統,并且常常因為誤(wu)信了(le)網上流傳的同樣古(gu)(gu)早的二手(shou)知識(shi)而以失敗(bai)告終(zhong)。

基于云的(de)(de)GPU環(huan)境一(yi)般都會提供預裝(zhuang)的(de)(de)鏡像(xiang),但畢(bi)竟(jing)選擇有限,不能覆蓋所(suo)有的(de)(de)場(chang)景。數據科(ke)學(xue)(xue)家們(men)大(da)多(duo)不是工(gong)程(cheng)師,糾纏這些底層細(xi)節既不擅長也(ye)無意義。工(gong)程(cheng)化的(de)(de)缺失一(yi)直是深度學(xue)(xue)習(xi)領域面臨的(de)(de)重(zhong)大(da)問題,年輕的(de)(de)煉丹師們(men)流汗又流淚。

本(ben)文(wen)將介紹(shao)如何基于容器技術快速(su)供給和切換不同的(de)(de)cuDNN/CUDA運行時,輕(qing)松(song)搭建不同版(ban)本(ben)的(de)(de)深度學習(xi)環(huan)境。

GPU容器化的核心是NVIDIA Container Toolkit:

不同的(de)容器共享GPU硬件和驅(qu)動,上層(ceng)的(de)cuDNN/CUDA組件已經預先打包在鏡像里,CUDA與(yu)底(di)層(ceng)的(de)驅(qu)動和操作系統實現(xian)解(jie)耦,不同版(ban)本(ben)的(de)運行時(shi)可(ke)以在同一臺主(zhu)機上共存,宿主(zhu)機上只(zhi)需要安(an)裝最新版(ban)本(ben)的(de)NVIDIA GPU驅(qu)動即可(ke)。

盡管(guan)很(hen)寬泛,但是(shi)NVIDIAContainer Toolkit對(dui)操作(zuo)系(xi)統的發(fa)行版和版本號還是(shi)有(you)基本的要求(qiu):

上表中常用的(de)操作系統(tong),Debian過于保守,Ubuntu太過激進(jin),裝(zhuang)機量較(jiao)大的(de)CentOS又前途不明,所以(yi)我們選擇完全(quan)兼容(rong)CentOS又有Oracle官方長期支持保障的(de)Oracle Linux作為環(huan)境安裝(zhuang)的(de)基石,這里使用最新(xin)的(de)8.4版本。

首先(xian)安(an)裝GPU驅動(dong),NVIDIA提供了(le)三種安(an)裝方式:本地(di)全量rpm包(bao)、網(wang)絡rpm倉庫(ku)和二進(jin)制(zhi)可執行文(wen)件(jian)。毫無疑(yi)問應該(gai)選擇(ze)本地(di)全量rpm包(bao),因(yin)為舊的依賴包(bao)不(bu)久就會被從(cong)網(wang)絡上移(yi)除(chu),而GPU硬件(jian)的使用(yong)壽命(ming)明(ming)顯遠(yuan)遠(yuan)長于這些軟件(jian),所以不(bu)建議(yi)選擇(ze)網(wang)絡倉庫(ku),以免將來無法重新安(an)裝;不(bu)選擇(ze)二進(jin)制(zhi)可執行文(wen)件(jian)是因(yin)為安(an)裝后難(nan)以干凈(jing)地(di)移(yi)除(chu),升級(ji)時可能會遇到沖突。

在//developer.nvidia.com/cuda-downloads下(xia)載全量rpm包:

安(an)裝內(nei)核(he)頭文件(jian),注意OracleLinux默認使用的是UEK內(nei)核(he),如(ru)果(guo)使用主線內(nei)核(he)請做相應調整(zheng)(安(an)裝kernel-devel):

【代碼】

安裝驅動模塊和必(bi)要(yao)的依賴:

【代碼】

第二步,安裝并啟(qi)動(dong)Docker服務:

【代碼】

最后,安裝NVIDIA Container Toolkit并且重啟(qi)Docker服務(wu):

【代碼】

NVIDIA在//gitlab.com/nvidia/container-images/cuda/blob/master/doc/supported-tags.md提供了從(cong)CUDA 9.2到(dao)CUDA 11..4.1的(de)(de)多(duo)種官方鏡(jing)像,創建(jian)不同版本(ben)的(de)(de)cuDNN/CUDA運(yun)行時只(zhi)需要(yao)簡單(dan)拉取(qu)對應的(de)(de)鏡(jing)像即(ji)可。

比如安(an)裝PyTorch 1.9.0所需的CUDA 10.2:

【代碼】

【輸出】

不要被右上角的CUDA版本(ben)號嚇到,它只是表(biao)明當前宿主機的GPU驅動所能支(zhi)持CUDA的最高版本(ben),容器中真正的CUDA版本(ben)可以通過nvcc命令來驗證:

【代碼】

【輸出】

祝煉丹成功。

tags: IT培訓
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT