大部分情况下,更新nvidia gpu驱动不需要重启机器。如果你的驱动成功更新,但是使用nvidia-smi提示有Failed to initialize NVML: Driver/library version mismatch,一般情况下是因为更新的驱动没有被成功加载。

查看当前nvidia driver是否被使用

执行第二条命令可以直接列出正在使用gpu的程序。比如nv-hosten是DCGM的server端,直接kill或者使用nv-hostengine -t将其退出即可。如果是其他程序,比如gdm3,可以通过sudo service gdm3 stop来终止桌面。

执行第一条命令,如果结果仍有输出,则回到上一步继续检查是否漏掉了某些程序没有关闭。

lsmod | grep nvidia
lsof | grep nvidia

关闭nvidia模块

关闭窗口管理器

systemctl isolate multi-user

如果以下命令出现了错误,找不到某个模块,则将其从命令中去掉然后重复执行,直到没有错误输出。如果出现的错误是modprobe: FATAL: Module nvidia is in use.,则回到前一段,继续查看是否仍有程序在使用GPU。

modprobe -r nvidia_uvm nvidia_drm nvidia_modeset nvidia-vgpu-vfio nvidia

重新加载nvidia 模块

modprobe nvidia 

Reference

https://developer.nvidia.com/nvidia-development-tools-solutions-err_nvgpuctrperm-permission-issue-performance-counters

https://askubuntu.com/questions/1166317/module-nvidia-is-in-use-but-there-are-no-processes-running-on-the-gpu


文章版权归 FindHao 所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明作者 FindHao 和本文原始地址:
https://findhao.net/easycoding/2601.html

Comments