在 Windows 10 中查询 GPU 占用率并实现 CMD 终端自动刷新,可以通过以下步骤操作:
方法 1:使用 nvidia-smi
(适用于 NVIDIA 显卡)
1. 安装 NVIDIA 驱动
- 确保已安装 NVIDIA 官方驱动(包含
nvidia-smi
工具)。 - 验证是否可用:打开 CMD,输入
nvidia-smi
,若显示 GPU 状态则已安装。
2. 实时监控 GPU 占用率
使用 nvidia-smi
的 循环刷新模式:
cmd
nvidia-smi --query-gpu=index,temperature.gpu,utilization.gpu --format=csv -l 1
--query-gpu
: 指定监控字段(GPU ID、温度、占用率)。--format=csv
: 输出格式为 CSV。-l 1
: 每 1 秒自动刷新。
示例输出:
timestamp, index, temperature.gpu, utilization.gpu [%] 2023/10/01 12:00:00.000, 0, 45, 15 2023/10/01 12:00:01.000, 0, 46, 20 ...
3. 停止刷新
按 Ctrl + C
终止实时监控。
此处使用如下代码比较方便
nvidia-smi -l 5
方法 2:使用 PowerShell 脚本(无需第三方工具)
1. 查询 GPU 占用率
通过 PowerShell 的 Get-WmiObject
查询 GPU 信息:
powershell
Get-WmiObject -Namespace "root\cimv2" -Query "SELECT * FROM Win32_VideoController"
此命令可显示 GPU 名称、显存等信息,但 不直接提供实时占用率。
2. 结合 Get-Counter
查询显卡负载
部分显卡支持通过性能计数器监控:
powershell
Get-Counter "\GPU Usage (SMI)"
若提示不存在,则需依赖第三方工具(如 nvidia-smi
)。
方法 3:自定义 CMD 自动刷新脚本
1. 编写批处理文件(.bat)
创建一个 .bat
文件,内容如下:
bat
@echo off :loop cls echo Current GPU Usage: nvidia-smi --query-gpu=index,temperature.gpu,utilization.gpu --format=csv timeout /t 1 >nul goto loop
cls
: 清屏以实现刷新效果。timeout /t 1
: 每秒执行一次。goto loop
: 无限循环。
2. 运行脚本
双击运行 .bat
文件,即可在 CMD 中看到自动刷新的 GPU 状态。
方法 4:使用第三方工具(通用)
1. GPU-Z
- GPU-Z 是轻量级工具,实时显示 GPU 详细信息。
- 支持所有显卡品牌(NVIDIA/AMD/Intel)。
2. HWMonitor
- 监控 GPU 温度、电压和风扇速度。
总结
全屏复制
方法 | 适用场景 | 优点 | 缺点 |
---|---|---|---|
nvidia-smi | NVIDIA 显卡 | 命令行实时监控,支持脚本 | 仅限 NVIDIA 显卡 |
PowerShell | 通用 | 无需安装 | 数据有限 |
批处理脚本 | 自定义刷新 | 灵活控制刷新频率 | 依赖 nvidia-smi |
GPU-Z | 所有显卡 | 图形化界面,信息全面 | 需安装 |
推荐方案:
- 若使用 NVIDIA 显卡,优先使用
nvidia-smi
或批处理脚本。 - 其他显卡可使用 GPU-Z 获取完整监控数据。