torch.cuda.is_available()傳回False的解決辦法
之前顯示卡驅動和cuda都可以正常使用,但是今天運作程式時發現使用了CPU,沒有使用GPU,運作的時候會報錯說 GPU驅動沒有運作之類的錯誤,然後使用CPU進行了訓練(直覺感覺就是慢了很多)。
1.首先檢視cuda 版本。
cat /usr/local/cuda/version.txt
// 輸出正常:
CUDA Version 11.0.228
2.檢視是否能使用GPU。結果為False
python3
import torch
torch.cuda.is_available() # cuda是否可用
或print(torch.cuda.is_available())
torch.cuda.device_count() #傳回gpu數量;
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL10kaNhXUq5UNRpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLwEzMyITMykDMwMzMwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
接着檢查了驅動,有裝置為0的GPU啊,但是不可用GPU,
懷疑出現系統更新造成的顯示卡驅動壞了,重新安裝了顯示卡驅動。問題終得解決!!!
後記:
torch.cuda.device_count()
#傳回gpu數量;
torch.cuda.get_device_name(0)
#傳回gpu名字,裝置索引預設從0開始;
torch.cuda.current_device()
#傳回目前裝置索引;