在這篇文章中,將分享最近遇到 NVIDIA GPU driver 的問題,這可能對面臨類似問題的人有所幫助~話不多說,直接開始正文!
當我嘗試使用 nvidia-smi
工具來檢查我的 NVIDIA GPU 狀態時,我遇到了一個錯誤訊息:NVIDIA-SMI couldn't find libnvidia-ml.so library in your system
。這意味著系統無法找到 libnvidia-ml.so
,這是 NVIDIA 驅動的一個關鍵庫文件,用於監控和管理 NVIDIA GPU。
這個問題通常指向 NVIDIA 驅動未正確安裝,或者系統無法正確定位到驅動的庫文件。
為了解決這個問題,我採取了以下步驟:
cd /usr/lib/x86_64-linux-gnu
libcuda.so
文件,然後創建了一個指向 libcuda.so.1
的符號鏈接:cp libcuda.so libcuda.so.backup
rm libcuda.so
ln -s libcuda.so.1 libcuda.so
libcuda.so.1
,以指向特定版本的庫文件:這裡的 libcuda.so.535.54.03 版本號碼,需配合硬體cp libcuda.so.1 libcuda.so.1.backup
rm libcuda.so.1
cp libcuda.so.535.54.03 libcuda.so.1
libnvidia-ml.so.1
進行了類似的操作:cp libnvidia-ml.so.1 libnvidia-ml.so.1.backup
rm libnvidia-ml.so.1
ln -s libnvidia-ml.so.535.54.03 libnvidia-ml.so.1
nvidia-smi
來確認問題是否得到解決。出現這個畫面,表示有呼叫成功,就可以使用 GPU 繼續進行模型訓練。通過這些步驟,成功解決了 nvidia-smi
無法找到 libnvidia-ml.so
的問題。面對驅動相關問題時,有時候需要手動去管理 package 的連接與指向,不過這可能是暫時的解決方法,未來更新驅動可能都還要再次調整,最好的方式還是確保驅動正確安裝。