Nvidia-smi 連不到 driver 的自救方法

YT Chen
3 min readNov 24, 2023

最近在用 12G VRAM 的顯卡跑 LLM,實在很痛苦…

跑一跑就莫名 OOM,然後 reboot 後就連不到 GPU 惹所以簡單紀錄一下 QQ

Photo by Thomas Foster on Unsplash

萬惡的根源

輸入 nvidia-smi 時跑出這咚咚

NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. 
Make sure that the latest NVIDIA driver is installed and running.

查了一圈都沒有類似 restart driver 的方法,都是叫你直接 reinstall。

解決方式

ls /usr/src | grep nvidia

會出來先前的 Nvidia driver version,以我的為例就是 nvidia-530.30.02

sudo apt-get install dkms

裝 dkms 這個 lib,總之是一個能夠珍惜生命讓你不用每次花時間找 src 跟手動編譯的好東西

sudo dkms install -m nvidia -v 530.30.02

我的是 530.30.02,注意要替換成 `ls /usr/src | grep nvidia`中的 version

如果沒噴錯恭喜你,driver 又可以用了🎉

Error! Your kernel headers for kernel 5.4.0-167-generic cannot be found.
Please install the linux-headers-5.4.0-167-generic package,
or use the --kernelsourcedir option to tell DKMS where it's located

如果出現如上字樣那要再加一步,再加裝 kernel header

sudo apt-get install linux-headers-5.4.0–167-generic

Yeah! driver 又可以用了🎉

小結

其實不算棘手的問題,只是每次遇到都很阿砸,還有我也很疑惑為什麼明明是重裝同樣的 driver version,所需要的 kernel header 居然不一樣?

不過根據我精湛的受折磨經驗,只要牽涉到 CUDA / CUDNN / driver 時都是重裝治百病😂 (x)

--

--