nvidia_uvm 被占用,nvidia-smi 卡死

系统可以识别到多块 NVIDIA GPU,且驱动模块已加载,但 nvidia_uvm 被占用,nvidia-smi 卡死,通常是由于以下原因导致:

可能原因

  1. GPU 资源被占用
    某些进程正在使用 NVIDIA 驱动,导致模块无法卸载。
  2. 驱动损坏或加载异常
    NVIDIA 内核模块部分加载,但驱动未能正确工作。
  3. GPU 挖矿或 AI 任务未释放
    某些后台程序未正常退出,导致 GPU 资源无法被释放。
  4. PCIe 通道异常
    多卡环境可能由于 PCIe 配置或硬件故障引起问题。

1. 查找占用 GPU 资源的进程

① 查找使用 GPU 的进程:

lsof /dev/nvidia*

如果输出中有程序(如 python, t-rex),记录其 PID

② 强制终止占用 GPU 的进程:

sudo kill -9 

如果无法识别占用者,尝试直接结束相关用户的会话:

pkill -9 python pkill -9 t-rex

2. 强制卸载 NVIDIA 模块

① 停止占用 GPU 的服务(如 Docker、AI 框架):

sudo systemctl stop docker sudo systemctl stop kubelet

② 卸载 NVIDIA 模块:

sudo modprobe -r nvidia_uvm nvidia_drm nvidia_modeset nvidia

如仍提示 "in use",可使用以下命令强制卸载:

sudo rmmod nvidia_uvm

3. 重新加载 NVIDIA 驱动

① 重新加载模块:

sudo modprobe nvidia

② 确认是否加载成功:

nvidia-smi

4. 清理并重装 NVIDIA 驱动

① 卸载当前驱动:

sudo yum remove '*nvidia*' 
sudo rm -rf /usr/local/cuda* 
sudo rm -rf /etc/modprobe.d/nvidia* 
sudo rm -rf /etc/systemd/system/nvidia*

② 重新安装 DKMS 并下载驱动:

sudo yum install epel-release -y sudo yum install dkms -y # 确保你有正确的驱动版本 
wget https://us.download.nvidia.com/tesla/535.154.05/NVIDIA-Linux-x86_64-535.154.05.run sudo bash NVIDIA-Linux-x86_64-535.154.05.run

5. 硬件排查

若问题仍存在,建议检查硬件相关问题:

  1. 检查 PCIe 插槽:确保 GPU 插槽和供电正常。
  2. 尝试单卡启动:只保留 1 张 GPU,排除单卡故障。
  3. 查看系统日志
dmesg | grep NVRM 
journalctl -k | grep -i nvidia

若问题仍未解决,可提供以下输出进一步排查:

  1. lsof /dev/nvidia*
  2. dmesg | grep NVRM
  3. journalctl -k | grep -i nvidia

你可能感兴趣的:(数据中心运维实战,chrome,前端,服务器,运维,linux)