系统安装的驱动版本太高,导致无法与pytorch兼容,想要降一下版本,参考了这篇文章的基础上做了一些修改,具体步骤如下:
查看版本
lspci | grep -i nvidia
得到显卡型号为 GeForce RTX 3090。
查看安装的nvidia模块
rpm -qa|grep -i nvid|sort
这个命令将会列出所有含有"nvid"字符的模块。
卸载所有相关模块
yum remove "*nvidia*"
这里将卸载nvidia驱动的所有模块,并解决依赖关系。
完全卸载CUDA TOOLKIT
yum remove "*cublas*" "cuda*"
其实在卸载nvidia所有模块时,cuda的相关模块已经卸载完了。这一步不做也是可以的。
在卸载完驱动后重启
卸载完驱动后需要重启计算机。
错误处理
重启之后,出现以下报错:
An NVIDIA kernel module ‘nvidia-drm’ appears to already be loaded in your kernel…
解决方式:关闭所有装置,并停止载入NVIDIA驱动程序:
systemctl isolate multi-user.target
modprobe -r nvidia-drm
之后,可以重新安装选定版本的nvidia驱动。后来重装几次驱动之后发现nvidia的官方驱动可以判别以前安装的驱动,并自动卸载再安装新驱动,但是前提是不能出现以上报错。所以,可能直接把nvidia模块unloaded之后,重新安装即可,而不需要手动卸载,这个以后有机会可以再尝试一下。