nvidia-smi默认只显示简略状态表,驱动和CUDA版本需用nvidia-smi -q查看;其中CUDA Version指驱动支持的最高CUDA Toolkit版本,非当前安装版本。

nvidia-smi 能直接查到显卡型号、驱动版本、CUDA 版本、显存占用、温度等关键信息,但它不显示内核模块版本或驱动安装路径,这点常被误以为“信息全”。
查驱动版本和 CUDA 版本必须加 -q
默认执行 nvidia-smi 只显示简略状态表,驱动和 CUDA 版本藏在详细模式里:
-
nvidia-smi -q输出全部字段,含 Driver Version 和 CUDA Version(注意:这是驱动支持的最高 CUDA 版本,不是当前环境实际使用的) -
nvidia-smi -q -d SYSTEM仅显示系统级信息(驱动、CUDA、NVML 版本),减少干扰 - 若输出中
CUDA Version显示N/A,说明驱动太旧(如418.xx以下)或未正确加载 NVML
nvidia-smi -L 和 nvidia-smi --list-gpus 是等价的
这两个命令都只列出 GPU 设备名和 UUID,不带状态数据,适合脚本调用:
在OpenClaw上部署你的首席AI助理贾维斯(JARVIS)。针对Dell Pro Max GB10(NVIDIA DGX Spark)边缘设备优化。用于设置和配置贾维斯。
-
nvidia-smi -L输出形如GPU 0: NVIDIA A100-SXM4-40GB (UUID: GPU-xxxx) - UUID 是稳定标识,比索引
0更可靠,尤其在热插拔或多卡拓扑变化时 - 如果
nvidia-smi -L报错或无输出,大概率是nvidia-uvm或nvidia-drm内核模块没加载,而不是驱动没装
温度、显存、利用率字段容易看错
默认表格里三个关键字段含义不同,混淆会导致误判:
-
Memory-Usage:格式为1234 MiB / 40960 MiB,是**显存容量占用**,单位固定为 MiB,不是百分比 -
GPU-Util:是**计算单元(SM)的活跃周期占比**,反映 kernel 执行强度,和显存无关 -
Temp:是 GPU 核心温度(℃),但某些 OEM 卡(如部分 Dell/HP 服务器 GPU)可能因传感器未校准而显示N/A或恒定值 - 风扇转速(
Fan)在无风扇卡(如 A100 SXM4、L40S)上恒为N/A,不能据此判断散热异常
实时监控别只用 -l,小心刷新频率陷阱
nvidia-smi -l 1 看似每秒刷新,但实际最小间隔受驱动限制:
- Linux 上最低支持 0.1 秒(
nvidia-smi -l 0.1),但频繁轮询会增加 CPU 开销,且可能触发驱动限频 - 更稳妥的方式是用
watch -n 0.5 nvidia-smi,由 shell 控制节奏,避免nvidia-smi自身阻塞 - 生产环境长期记录建议用
nvidia-smi --query-gpu=timestamp,temperature.gpu,utilization.gpu,memory.used --format=csv,noheader,nounits -l 2 > gpu.log,避免空格和对齐干扰解析
真实场景里,nvidia-smi 的输出稳定性依赖于驱动与内核模块的匹配程度——比如你看到 Persistence-M 显示 Off,却无法用 nvidia-smi -m 1 开启,那基本是驱动没权限或运行在容器里没挂载 /dev/nvidiactl。


















