☰
fft npainting lama GPU利用率查看:nvidia-smi使用指南
2026/10/3 12:35:07 网站建设 项目流程

fft npainting lama GPU利用率查看:nvidia-smi使用指南

1. 引言:图像修复与GPU监控的重要性

你是不是也遇到过这种情况:用fft npainting lama做图像重绘、修复、移除物品时,系统卡得像老牛拉车?明明想快速去个水印或删掉路人甲,结果等了半分钟还没出图。这时候你就该怀疑——GPU到底在不在干活?

别急,问题可能不在模型本身,而在于你没掌握一个关键技能:如何查看GPU的实时利用率。本文就带你搞懂一件事:怎么用nvidia-smi实时监控你的GPU状态,确保fft npainting lama这类AI图像修复工具真正跑在“加速档”上。

这不仅是运维人员的事,每一个做二次开发、部署WebUI、调优性能的人都该会。尤其是你自己搭建的这套由“科哥”开发的图像修复系统,只有你知道它背后跑的是不是满血状态。

为什么需要关注GPU使用率?

  • 避免CPU空转:你以为AI在算,其实它在“假装努力”
  • 排查性能瓶颈:是显存不够?还是驱动没装对?
  • 优化推理速度:确认是否真正启用了GPU加速
  • 资源合理分配:多任务并行时防止OOM(显存溢出)

接下来,我会手把手教你nvidia-smi的核心用法,并结合你在运行cv_fft_inpainting_lama项目时的实际场景,告诉你怎么看、怎么分析、怎么调。


2. nvidia-smi 是什么?一分钟讲清楚

2.1 它不是软件,而是“显卡体检报告”

你可以把nvidia-smi理解成一张NVIDIA显卡的健康检查单。只要敲一行命令:

nvidia-smi

就能看到当前GPU的核心运行数据,比如:

  • 显卡型号(Tesla T4?RTX 3090?)
  • 驱动版本
  • 温度
  • 功耗
  • 显存使用情况
  • GPU利用率(%)

这才是判断你那个图像修复系统有没有真正在“用GPU”的唯一标准。

2.2 安装和启用前提

要能使用nvidia-smi,必须满足两个条件:

  1. 有NVIDIA独立显卡
  2. 已正确安装CUDA驱动

如果你是在云服务器(如阿里云、AWS、CSDN星图)上部署的环境,通常已经预装好了。但如果是本地机器,建议先执行:

nvidia-smi

如果提示command not found,说明驱动没装好,需要先安装 NVIDIA官方驱动 和 CUDA Toolkit。


3. 解读 nvidia-smi 输出信息

当你输入nvidia-smi后,终端会输出类似下面的内容:

+-----------------------------------------------------------------------------+ | NVIDIA-SMI 535.129.03 Driver Version: 535.129.03 CUDA Version: 12.2 | |-------------------------------+----------------------+----------------------+ | 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 T4 On | 00000000:00:03.0 Off | 0 | | N/A 58C P0 28W / 70W | 1024MiB / 15360MiB | 85% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU PID Type Process name Usage | |=============================================================================| | 0 12345 C python 1020MiB | +-----------------------------------------------------------------------------+

我们来逐项解读最关键的信息。

3.1 核心字段解析

字段含义如何判断是否正常
GPU-UtilGPU计算核心使用率(百分比)>70% 表示正在高强度工作
Memory-Usage显存占用接近上限会报错 OOM
Temp温度超过85°C需注意散热
Pwr:Usage/Cap功耗判断是否达到性能上限
Process name占用进程确认是python在使用

3.2 关键指标:GPU-Util 到底多少才算“在干活”?

  • 0%~10%:基本没用GPU,可能是CPU模式运行
  • 10%~30%:轻度使用,可能只是加载模型
  • 30%~70%:中等负载,推理正在进行
  • 70%~100%:高负载,正在全力计算(理想状态)

举个例子:
你在 WebUI 上点击“🚀 开始修复”,理论上GPU-Util应该瞬间冲到80%以上,持续10~30秒。如果一直是10%,那说明根本没走GPU!


4. 实战:结合 fft npainting lama 查看GPU使用情况

现在我们回到你实际使用的这个项目:

fft npainting lama 重绘修复图片 移除物品 二次开发构建 by 科哥

假设你已经启动了服务:

cd /root/cv_fft_inpainting_lama bash start_app.sh

并且访问了 WebUI 并上传了一张图,准备开始修复。

4.1 正确的监控操作流程

打开另一个终端窗口(不要中断服务),执行以下命令:

watch -n 1 nvidia-smi

这句命令的意思是:每1秒刷新一次 nvidia-smi 的输出,相当于一个实时监控仪表盘。

然后回到浏览器,点击“🚀 开始修复”。

观察终端变化:

  • 修复前:GPU-Util≈ 10%,显存已占一部分(模型加载)
  • 修复中:GPU-Util突然跳到80%~100%,持续十几秒
  • 修复后:GPU-Util回落至 0%

✅ 如果看到这个波动,恭喜你,你的系统确实在用GPU加速!

❌ 如果全程GPU-Util不超过20%,那你很可能在“用CPU跑AI”,慢是必然的。

4.2 典型异常案例分析

案例一:显存爆了(OOM)

输出显示:

| 0 Tesla T4 On | ... | 15300MiB / 15360MiB | 0% Default |

虽然显存快满了,但GPU-Util=0%,说明程序卡住了。常见于大图修复(>2000px)时。

解决方法:

  • 缩小图像尺寸
  • 使用分块处理策略
  • 升级更高显存的GPU
案例二:Python进程没出现在列表里

Processes 表格为空,或者只有Xorg、compiz这种图形界面进程。

说明你的 Python 脚本根本没有调用GPU。

排查方向:

  • 是否安装了torch的 CUDA 版本?
  • 是否设置了device='cuda'?
  • 是否模型加载时报错?

可以用这条命令查 PyTorch 是否识别到 GPU:

python -c "import torch; print(torch.cuda.is_available())"

预期输出:True

如果是False,那就得回头检查环境配置了。


5. 高级技巧:让监控更高效

5.1 持续记录日志(用于事后分析)

有时候你想知道过去几分钟发生了什么。可以将nvidia-smi输出保存为日志文件:

nvidia-smi --query-gpu=timestamp,power.draw,temperature.gpu,utilization.gpu,utilization.memory,memory.used --format=csv -l 1 >> gpu_log.csv

这条命令会:

  • 查询时间戳、功耗、温度、GPU和内存利用率
  • 以 CSV 格式输出
  • 每秒记录一次,追加写入gpu_log.csv

修复完一张图后,你可以用 Excel 打开这个文件,画出利用率曲线,直观看出性能表现。

5.2 只看关键数值(适合脚本集成)

如果你只想快速获取 GPU 利用率数字,可以用:

nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits

输出就是个纯数字,比如:

85

这个功能特别适合写进自动化脚本,比如当 GPU 利用率长期低于10%时自动报警。

5.3 多GPU环境下指定查看某一块

如果你有多个GPU(比如0号和1号),可以通过-i参数指定:

nvidia-smi -i 0 # 查看第0块GPU nvidia-smi -i 1 # 查看第1块GPU

在部署多个AI服务时非常有用,可以分别监控不同任务的资源占用。


6. 结合WebUI优化使用体验

你现在用的这套“图像修复系统”是由科哥二次开发的 WebUI,界面友好,操作简单。但我们不能只停留在“点按钮”层面,要学会从底层看它是不是真的高效。

6.1 如何判断 WebUI 是否发挥了最大性能?

每次点击“开始修复”时,在另一个终端运行:

watch -n 0.5 nvidia-smi

观察三个指标:

  1. GPU-Util 是否飙升?

    • 是 → 正常
    • 否 → 检查代码是否启用CUDA
  2. 显存使用是否逐步上升?

    • 是 → 模型在加载
    • 否 → 可能在用CPU缓存
  3. 处理完成后是否回落?

    • 是 → 资源释放正常
    • 否 → 存在内存泄漏风险

6.2 给开发者的小建议(科哥可参考)

如果你是该项目的维护者,可以在 WebUI 的“处理状态”区域增加一个功能:

📊GPU状态:GPU使用率 85%|显存 1.2GB/15GB

只需要在后台定期调用:

import subprocess result = subprocess.run(['nvidia-smi', '--query-gpu=utilization.gpu,memory.used,memory.total', '--format=csv,noheader,nounits'], capture_output=True, text=True) print(result.stdout)

然后把结果传给前端展示,用户就能实时知道自己“花的钱值不值”(尤其是云服务器按小时计费的情况下)。


7. 总结:掌握 nvidia-smi,才能真正掌控AI性能

7.1 本文要点回顾

  • nvidia-smi是查看GPU状态的必备工具
  • GPU-Util > 70%才算真正发挥了GPU能力
  • 在运行fft npainting lama图像修复时,应观察到明显的利用率峰值
  • 若长期低于20%,极有可能是在用CPU跑模型
  • 可通过watch -n 1 nvidia-smi实现动态监控
  • 多GPU、日志记录、脚本集成都有对应高级用法

7.2 给用户的行动建议

下次再用这套“图像修复系统”时,记得做三件事:

  1. 打开新终端,运行watch -n 1 nvidia-smi
  2. 点击“开始修复”,盯着GPU-Util看它能不能冲上去
  3. 如果没动静,立即检查环境配置,别干等着

只有当你亲眼看到那个数字从0飙到90%,你才会明白:什么叫真正的“AI加速”。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询