Nvidia-smi命令出错,could not communicate with Nvidia Driver

1、原因

电脑或服务器升级,导致Linux内核升级,导致以前安装的Linux驱动与现有内核版本不太匹配。

2、解决方式

1、安装dkms工具

sudo apt-get install dkms

安装完成后,产看当前driver版本

ls -l /usr/src/

得到如下的结果:

可以看出,当前驱动的版本为550.78,然后,执行指令

sudo dkms install -m nvidia -v 550.78

等待结束,即可重新使用nvidia-smi

### nvidia-smi 命令使用指南 `nvidia-smi` 是 NVIDIA 提供的一个用于管理和监控 GPU 设备的强大工具。它可以显示当前 GPU 的状态、驱动版本以及 CUDA 版本等重要信息[^2]。 #### 显示基本信息 执行 `nvidia-smi` 可以查看当前系统的 GPU 配置和运行状况,包括显存占用情况、温度、功耗等。以下是基本命令及其功能: ```bash nvidia-smi ``` 此命令会返回类似于以下的信息结构: ``` +-----------------------------------------------------------------------------+ | NVIDIA-SMI 550.54.15 Driver Version: 550.54.15 CUDA Version: 12.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | +===============================+======================+======================+ | 0 Tesla V100 Off | 00000000:0A:00.0 Off | 0 | | N/A 37C P0 29W / 250W | 0MiB / 16160MiB | 0% Default | +-------------------------------+----------------------+----------------------+ ``` 以上输出展示了 GPU 名称、驱动版本、CUDA 版本、风扇转速、温度、功率消耗、内存使用率以及其他关键指标[^3]。 --- #### 查看特定字段 如果只需要获取某些特定字段的数据,可以使用 `-q` 和 `-f` 参数来定制输出格式。例如: ```bash nvidia-smi --query-gpu=name,memory.total,memory.free,memory.used --format=csv ``` 该命令将以 CSV 格式打印 GPU 名称及对应的总显存、可用显存和已用显存数据。 --- #### 设置持久化模式 为了防止 GPU 在长时间无操作的情况下进入低功耗状态,可以通过启用持久化模式 (`Persistence Mode`) 来保持高性能工作负载。具体方法如下: ```bash sudo nvidia-smi -pm 1 ``` 启用后,即使没有活动进程绑定到 GPU 上,它也会维持高频率运行[^3]。 --- #### Docker 中的 nvidia-smi 使用 当在基于 NVIDIA 容器技术的环境中部署应用时,可以直接通过 Docker 调用 `nvidia-smi` 工具。例如,在所有 GPU 上运行测试可执行以下命令: ```bash docker run --gpus all --rm nvcr.io/nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi ``` 或者限定只使用部分 GPU: ```bash docker run --rm --gpus '"device=0,1"' nvidia/cuda:12.4.0-base-ubuntu22.04 nvidia-smi ``` 此外,还可以利用 `/etc/docker/daemon.json` 文件预先分配固定数量的 GPU 内存给容器实例[^4]。 --- ### 常见问题排查 1. **nvidia-smi 报错:Failed to initialize NVML** 此错误通常表明系统缺少必要的 NVIDIA 驱动程序支持或未正确加载模块。解决办法是重新安装适配的操作系统环境下的最新版驱动,并确认其已被激活。 2. **版本冲突引发的功能异常** 如果发现实际使用的 `nvidia-smi` 版本低于预期,则可能是由于旧版本残留文件干扰所致。务必清理干净后再尝试更新至目标版本[^2]。 3. **Docker 下无法识别 GPU** 确认是否已经按照官方文档完成相关配置步骤,比如安装了 `nvidia-docker2` 插件并重启服务。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值