首页/AI/大模型部署与运维速查/NVML 与 pynvml:脚本化采集 GPU 指标
本包目录(267 条)
部署形态与选型43 条
推理环境与 GPU50 条
推理参数与优化50 条显存与并发估算40 条服务化与网关34 条运维监控与排障50 条

NVML 与 pynvml:脚本化采集 GPU 指标

nvidia-smi 底层是 NVML 库;Python 侧常用 nvidia-ml-py(导入名 pynvml)读取显存、温度、功耗与进程信息,适合自建轻量监控与巡检脚本。

最小采集脚本

最小采集脚本
from pynvml import (nvmlInit, nvmlDeviceGetCount,
                     nvmlDeviceGetHandleByIndex, nvmlDeviceGetMemoryInfo)

nvmlInit()
for i in range(nvmlDeviceGetCount()):
    h = nvmlDeviceGetHandleByIndex(i)
    m = nvmlDeviceGetMemoryInfo(h)
    print(i, m.used // 2**20, 'MiB /', m.total // 2**20, 'MiB')
采集频率保持秒级即可,高频调用 NVML 也有开销;容器里使用需要把 GPU 设备挂进容器。

易错点

  • 包名容易踩坑:安装名是 nvidia-ml-py,导入名才是 pynvml;装到旧版包会出现接口缺失

数据来源与参考

  • NVIDIA NVML API 文档(docs.nvidia.com/deploy/nvml-api)
  • nvidia-ml-py 包(pypi.org/project/nvidia-ml-py)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌