Pytorch(GPU版)在命令窗口安裝成功后仍無法使用GPU的解決方法
依據(jù)土堆老師的環(huán)境配置教程【最詳細的 Windows 下 PyTorch 入門深度學(xué)習(xí)環(huán)境安裝與配置 CPU GPU 版 | 土堆教程】進行環(huán)境配置,一切都很順利,直到下載pytorch時,不論是直接官網(wǎng)下載還是鏡像通道,最后的torch.cuda.is_available()返回值都是false。
上網(wǎng)找了不少文章和官網(wǎng)之后摸索出了解決方法,故分享。
【注意】本文適用于【能夠從鏡像網(wǎng)站中順利下載pytorch的各種包】,并且【最后的torch.cuda.is_available()返回值是false】的朋友們。
【出現(xiàn)問題的原因】
請參照【https://windses.blog.csdn.net/article/details/125910538】這位老師的文章,說得非常詳細易懂,本文的解決方法也是完全參照老師的步驟。
(老師的文章中給出的是linux的解決方法,不能夠直接用于windows,為了幫各位有同樣問題的朋友快速解決問題而不像我一樣整了一天后還繼續(xù)摸索,于是寫了這篇文章)
老師總結(jié)出來的根本原因是:【找不到對應(yīng)GPU版本的pytorch文件,所以conda就用CPU替代了=v=】
我們下載的幾個包都有不同的版本,鏡像站中沒有恰好對應(yīng)這幾個包這幾個版本組合起來的pytorch(GPU版),就自行用pytorch(CPU版)代替了。而且我們檢查的時候,按照土堆老師的教程,檢查到了【pytorch】就可以繼續(xù)進行下一步檢查,但這個pytorch是CPU版本的。
所以torch.cuda.is_available()返回值一直都是false。
所以我們的解決方法就是:找到鏡像站搭配好的、有pytorch能夠?qū)?yīng)的組合。
【解決方法】
1.首先按照土堆老師的教程,選擇好自己電腦能夠能夠使用的CUDA版本
2.在選擇的鏡像站中搜索自己想要搭建的虛擬環(huán)境的python版本,舉例如Microsoft Edge用【ctrl+F】便可在網(wǎng)頁內(nèi)搜索。
【例:】
在土堆老師給出的鏡像站中選擇【下載pytorch, torchvision, torchaudio】的清華鏡像站:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/

用瀏覽器內(nèi)置搜索功能在網(wǎng)頁中搜索我們的虛擬環(huán)境所用的python版本,并且找到自己剛剛選擇的CUDA版本。
注:edge瀏覽器按【ctrl+F】即可打開網(wǎng)頁搜索功能
以python3.8和CUDA=11.3為例,進行查找,查找方式和結(jié)果如圖。

我們發(fā)現(xiàn),提供的pytorch版本為1.10.2,有這個信息已經(jīng)足夠了。
3.進入命令窗口,在鏡像通道進行下載。
打開anaconda prompt,進入自己創(chuàng)建的虛擬環(huán)境。

輸入conda install cudatoolkit=11.3 -c?https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/??#從鏡像網(wǎng)站中下載cuda=11.3
輸入conda install pytorch==1.10.2?torchvision torchaudio -c?https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/??#從鏡像網(wǎng)站中下載?pytorch==1.10.2和剩余的幾個包
剩余的包沒有版本要求,只有pytorch和cuda有版本要求。
pytorch的版本確定已在上一步提過。這個非常重要。
看系統(tǒng)給出的包,觀察pytorch這一項的內(nèi)容,里邊所含的是否和鏡像站所含的各種包【pytorch==1.10.2 python==3.8 cuda==11.3 cudnn==8_0】的版本是一致的(就是上上圖中紅色圈出來的那個)
確認完全一致之后繼續(xù),安裝完成之后再按照土堆老師的教程檢驗,得到的結(jié)果就是True了。