問題背景
服務器的Nvidia-Driver的版本與CUDA版本不一致,導致gpu計算無法使用。
問題查詢
nvidia-smi
正常的版本對應(別的機器):
[root@my]$ cat /usr/local/cuda/version.txt
CUDA Version 10.1.243
根據CUDA與Nvidia-Driver的對應關系(官方鏈接):
發現確實是我們的Driver版本過低,與CUDA不匹配造成。 方法一:降低cuda版本(不詳細介紹了,因為我希望升級驅動)
方法二:升級Nvidia-Driver(本文方法)解決方法
卸載原有驅動 方法一:找到顯卡驅動.run文件:$ sh NVIDIA-Linux-x86_64-418.126.02.run uninstall
方法二:清除所有nvidia相關文件和依賴
$ yum remove nvidia-*
為了刪除乾淨還可以(目標就是把nvidia-driver的相關組件都清理掉):
rpm -qa|grep -i nvid|sort
yum remove kmod-nvidia-*
值得注意的是,由於內核系統的不同,所采取的命令方法不同 apt-get屬於ubuntu、Debian的包管理工具 yum則屬於Redhat、Centos包管理工具 在選擇利用什麼命令刪除時,應先確定自己的系統是什麼。 如sudo apt-get purge nvidia-* 代替yum remove nvidia-*
在卸除驅動後一定記得重啟sudo reboot
下載安裝新驅動 驅動版本以及下載地址:官方wget 相應下載地址
sh NVIDIA-Linux-x86_64-418.126.02.run
然後按照提示框一步步ok就行了
最終結果
其他
- 可以使用如下代碼測試gpu計算是否可以使用(pytorch):
import torch
a = torch.cuda.is_available()
print(a)
ngpu= 1
# Decide which device we want to run on
device = torch.device("cuda:0" if (torch.cuda.is_available() and ngpu > 0) else "cpu")
print(device)
print(torch.cuda.get_device_name(0))
print(torch.rand(3,3).cuda())
- 顯卡,顯卡驅動,nvcc, cuda driver,cudatoolkit,cudnn到底是什麼? 鏈接