Win10 GPU運(yùn)算環(huán)境搭建(CUDA10.0+Cudnn 7.6.5+pytroch1.2+tensorflow1.14.0)
一、深度學(xué)習(xí)為什么要搭建GPU運(yùn)算環(huán)境?
熟悉深度學(xué)習(xí)的人都知道,深度學(xué)習(xí)是需要訓(xùn)練的,所謂的訓(xùn)練就是在成千上萬(wàn)個(gè)變量中尋找最佳值的計(jì)算,所需計(jì)算的數(shù)據(jù)量異常龐大。CPU是一個(gè)有多種功能的優(yōu)秀領(lǐng)導(dǎo)者。它的優(yōu)點(diǎn)在于調(diào)度、管理、協(xié)調(diào)能力強(qiáng),計(jì)算能力則位于其次。CPU的運(yùn)算在遇到大體量的數(shù)據(jù)時(shí)就會(huì)耗費(fèi)大量時(shí)間,而GPU相當(dāng)于一個(gè)接受CPU調(diào)度的“擁有大量計(jì)算能力”的員工,用GPU運(yùn)算則可以大大加快深度學(xué)習(xí)運(yùn)算速度,從而減少科研的時(shí)間成本。
什么是CUDA?
CUDA(Compute Unified Device Architecture)是顯卡廠商N(yùn)VIDIA推出的運(yùn)算平臺(tái)。 CUDA™是一種由NVIDIA推出的通用并行計(jì)算架構(gòu),該架構(gòu)使GPU能夠解決復(fù)雜的計(jì)算問(wèn)題。
什么是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,這樣才能使GPU進(jìn)行高速的深度神經(jīng)網(wǎng)絡(luò)的工作。
二、搭建GPU運(yùn)算環(huán)境
檢查自己的顯卡型號(hào),選擇適合的CUDA和CUDNN
如圖打開NVIDIA控制面板–>系統(tǒng)信息–>找到NVCUDA.DLL
可以看到NVCUDA.DLL 后面產(chǎn)品名稱那一列寫著NVIDIA CUDA 10.2.95 driver,說(shuō)明我的顯卡支持CUDA10.2及以下版本。
CUDA的下載
這里我選擇了CUDA 10.0版本,因?yàn)橄噍^于最新版CUDA 10.2,版本稍低一點(diǎn)會(huì)相對(duì)穩(wěn)定點(diǎn)吧!進(jìn)入NVIDIA官網(wǎng)下載CUDA然后安裝可以了。
下圖根據(jù)提示選擇好自己的系統(tǒng),系統(tǒng)架構(gòu),系統(tǒng)版本,下載方式,點(diǎn)擊下載的CUDA是最新的!想要下載歷史版本的話,需要自己去找,具體百度即可。
最后進(jìn)入命令窗口輸入:nvcc -V查看安裝是否成功。下圖就是成功安裝的樣子。
Cudnn的下載
進(jìn)入Cudnn界面–>點(diǎn)擊Download cuDNN
這里網(wǎng)站會(huì)要求你注冊(cè)一個(gè)英偉達(dá)賬號(hào),注冊(cè)了就會(huì)跳轉(zhuǎn)去下載頁(yè)面,最后根據(jù)自己安裝的CUDA版本選擇Cudnn版本就好。我用的是Cudnn 7.6.5。
下載解壓后,把CuDNN目錄里面的bin, include, lib里面的文件覆蓋放入CUDA目錄下對(duì)應(yīng)的bin,include,lib里面(注意是復(fù)制文件,而不是文件夾)。
至此GPU運(yùn)算環(huán)境就算搭建完成了!
三、Ananconda3的安裝
什么是Anaconda?
Anaconda指的是一個(gè)開源的Python發(fā)行版本,其包含了conda、Python等180多個(gè)科學(xué)包及其依賴項(xiàng)。
Conda是一個(gè)開源的包、環(huán)境管理器,可以用于在同一個(gè)機(jī)器上安裝不同版本的軟件包及其依賴,并能夠在不同的環(huán)境之間切換。
下載Anaconda3
根據(jù)電腦系統(tǒng)和python版本選擇下載文件,按照安裝程序的指示進(jìn)行安裝就好了。
四、Anaconda虛擬環(huán)境的搭建
什么是虛擬環(huán)境?
虛擬環(huán)境無(wú)非就是將系統(tǒng)的Python運(yùn)行環(huán)境copy到一個(gè)指定的文件夾下,這個(gè)文件夾里的內(nèi)容就是所謂的虛擬環(huán)境。你可以在這個(gè)copy出來(lái)的環(huán)境做實(shí)驗(yàn)(寫你的Python代碼)而不用擔(dān)心影響到其它的項(xiàng)目。也就是說(shuō)每個(gè)虛擬環(huán)境都是獨(dú)立的相互隔離的。
不同項(xiàng)目所需要的框架和python包甚至是框架和包的版本都各不相同,所以為每個(gè)項(xiàng)目搭建特定的虛擬環(huán)境是非常有必要的,要養(yǎng)成這個(gè)好習(xí)慣!
虛擬環(huán)境的相關(guān)操作
使用conda create -n your_env_name python=X.X(2.7、3.6等)
命令創(chuàng)建python版本為X.X、名字為your_env_name的虛擬環(huán)境。
進(jìn)入虛擬環(huán)境:conda activate your_env_name
(虛擬環(huán)境名稱)
對(duì)虛擬環(huán)境中安裝額外的包:conda install -n your_env_name [package]
退出虛擬環(huán)境:deactivate
五、選擇要搭建的深度學(xué)習(xí)框架
Pytorch的安裝
進(jìn)入pytorch官網(wǎng),選擇自己的操作系統(tǒng)、編程語(yǔ)言、CUDA版本,最后紅圈部位會(huì)出現(xiàn)一行命令,復(fù)制到命令窗口就可以下載了。
但是!這種方法靈活性很低,我安裝的是CUDA 10,上圖Package里沒(méi)有這個(gè)選項(xiàng)怎么辦?還有PyTorch的版本在國(guó)內(nèi)下載是非常非常非常慢的,而且近期清華與科大的鏡像都被封了,就導(dǎo)致了直接使用PyTorch官網(wǎng)推薦的語(yǔ)句很難安裝。
解決辦法是:下載安裝包到本地 。
建議大家在Package一項(xiàng)中選擇“pip”安裝,然后在“Run this Command”這一欄,直接復(fù)制代碼中的兩個(gè)網(wǎng)址,就可以下載到本地來(lái)進(jìn)行安裝了。
檢查環(huán)境和GPU運(yùn)算是否搭建成功
我上網(wǎng)了解很多人使用pytorch 1.2版本,所以沒(méi)有下載最新的1.5。
import torch print("hello pytorch {}".format(torch.__version__)) device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
Tensorflow的安裝
TensorFlow是基于VC++2015開發(fā)的,所以需要下載安裝VisualC++ Redistributable for Visual Studio 2015 來(lái)獲取MSVCP140.DLL的支持。
我這里下載了Visual Studio 2017。
然后就是好習(xí)慣時(shí)刻——?jiǎng)?chuàng)建一個(gè)虛擬環(huán)境,進(jìn)入其中執(zhí)行下載語(yǔ)句conda install tensorflow安裝就可以了!我用的是 Tensorflow 1.14.0。
五、心得和一些建議
整個(gè)深度學(xué)習(xí)環(huán)境的搭建過(guò)程是挺磨人的,我期間參考了許多博客和視頻。由于版本問(wèn)題不匹配而導(dǎo)致環(huán)境搭好了又要推倒重來(lái),不斷地踩坑排坑,還好結(jié)果是好的。
給一些建議:
- 在搭建GPU環(huán)境前,要了解自己的顯卡支持的CUDA版本,并且cudnn要和CUDA版本匹配。
- 無(wú)論是CUDA還是深度學(xué)習(xí)框架,盡量避免使用最新版,版本稍微低一點(diǎn)點(diǎn)就夠了,因?yàn)槌隽藛?wèn)題能找到很多同版本使用者的解決方案。
- 國(guó)內(nèi)下載python包有時(shí)會(huì)很慢甚至報(bào)一些連接失敗的錯(cuò)誤,換個(gè)下載方式就好了。
- 多利用虛擬環(huán)境,避免各個(gè)環(huán)境間的污染。
- 搭建好環(huán)境后,去跑一個(gè)中等大小的圖像數(shù)據(jù)集代碼吧!然后去看看你的GPU利用率是否變得很高,驗(yàn)證環(huán)境確實(shí)是搭建成功了。
本文所涉及到的版本配置
- Window 10 + RTX 2060
- CUDA10.0+Cudnn 7.6.5
- Pytorch 1.2.0 +Python 3.6.5
- Tensorflow 1.14.0+Visual Studio 2017+python 3.7.3
到此這篇關(guān)于Win10 GPU運(yùn)算環(huán)境搭建(CUDA10.0+Cudnn 7.6.5+pytroch1.2+tensorflow 1.14.0)的文章就介紹到這了,更多相關(guān)Win10 GPU運(yùn)算環(huán)境搭建內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。