編碼的世界 / 優質文選 / 感情

CentOS.7卸載與安裝Nvidia Driver


2022年6月24日
-   

問題背景


服務器的Nvidia-Driver的版本與CUDA版本不一致,導致gpu計算無法使用。

問題查詢


  • 查詢Nvidia-Driver版本:

nvidia-smi

正常的版本對應(別的機器):
  • 查詢CUDA版本:

[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到底是什麼? 鏈接

    熱門文章