windows查看GPU占用率以及GPU未执行原因

本文介绍了一种情况,即在尝试使用GPU进行深度学习时,发现GPU并未被启用,而是CPU承担了所有运算任务。通过检查发现,GPU由于计算能力不足(2.1低于最低要求3.0)而被系统自动忽略。

1、CPU利用率

进行深度学习时,发现电脑CPU占用率太高,接近100%,磁盘有时也达到100%。怀疑没有用GPU进行训练。

任务管理器中只有CPU、内存、磁盘的占用率情况

 

2、查看GPU占用率

(1)打开cmd窗口(win+R,再输入cmd)

(2)在文件夹C:\Program Files\NVIDIA Corporation\NVSMI里找到文件nvidia-smi.exe

(3)将文件拖入cmd窗口,就可以显示GPU信息。发现:GPU利用率很低,不到5%。

第一行是版本信息,第二行是标题栏,第三行就是具体显卡信息了。

GPU:编号,0

Name:显卡名,NVS 4200M

TCC/WDDM:WDDM

Fan:风扇转速,这里N/A,应该是没转

Temp:显卡温度,这里是66摄氏度

Perf:性能状态,congP0-P12,P0性能最大,P12最小,这里是P0

Pwr:能耗,Usage是使用量,Cap是总量

BusId:涉及GPU总线

Disp.A:表示GPU的显示是否已经初始化

Memory-Usage:显存使用率,这里才用很少,5%不到

CPU-Util:GPU利用率

Compute M:计算模式

 

(参考文章:https://blog.youkuaiyun.com/Cloudox_/article/details/78651637

(4)用GPU-Z工具查看GPU使用情况:发现负载为0

----------------------------------------------------------------------------------------------------------------------------------

综合nvidia-smi.exe和GPU-Z发现GPU没有执行

 

3、查看GPU没有执行的原因

>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
2018-05-17 15:25:30.744860: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1356] Found device 0 with properties:
name: NVS 4200M major: 2 minor: 1 memoryClockRate(GHz): 1.62
pciBusID: 0000:01:00.0
totalMemory: 1.00GiB freeMemory: 826.13MiB
2018-05-17 15:25:30.745094: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1406] Ignoring visible gpu device (device: 0, name: NVS 4200M, pci bus id: 0000:01:00.0, compute capability: 2.1) with Cuda compute capability 2.1. The minimum required Cuda capability is 3.0.
2018-05-17 15:25:30.746883: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix:
2018-05-17 15:25:30.747687: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:929]      0
2018-05-17 15:25:30.748385: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:942] 0:   N
Device mapping: no known devices.
2018-05-17 15:25:30.750654: I T:\src\github\tensorflow\tensorflow\core\common_runtime\direct_session.cc:284] Device mapping:Ignoring visible gpu device (device: 0, name: NVS 4200M, pci bus id: 0000:01:00.0, compute capability: 2.1) with Cuda compute capability 2.1. The minimum required Cuda capability is 3.0.
2018-05-17 15:25:30.746883: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix:
2018-05-17 15:25:30.747687: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:929]      0
2018-05-17 15:25:30.748385: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:942] 0:   N
Device mapping: no known devices.
2018-05-17 15:25:30.750654: I T:\src\github\tensorflow\tensorflow\core\common_runtime\direct_session.cc:284] Device mapping:

信息提示:电脑gpu设备cuda计算能力为2.1,但gpu加速需要的最小cuda计算能力为3.0。

搜索查看https://blog.youkuaiyun.com/wyx100/article/details/78473732?locationnum=7&fps=1?%3E这篇文章也说到,cuda计算能力要达到3.0以上,才能进行gpu加速。否则会自动调用cpu进行计算。

<think>好的,用户想知道如何在Windows系统中检查GPU占用率。我需要先回想一下自己知道的几种方法,然后结合提供的参考资料,看看有没有可以补充的地方。 首先,最常见的方法应该是使用任务管理器。Windows 10和11的任务管理器确实有GPU性能监控的功能。我记得在“性能”选项卡里,左边会有GPU的选项,点击后可以看到各个引擎的使用情况,包括3D、视频编码、解码等。这可能就是用户需要的占用率信息。过需要确认用户的操作系统版本是否支持这个功能,比如较旧的Windows版本可能没有。 接下来,参考资料里提到了使用nvidia-smi命令,这在Linux下很常用,但用户问的是Windows过实际上,如果用户安装了NVIDIA显卡的驱动,应该也可以在CMD或PowerShell里运行这个命令。需要提醒用户打开命令行工具,输入nvidia-smi,然后查看结果中的GPU-Util部分,这里显示的是利用率。但要注意,这个命令可能需要添加到系统路径,或者用户需要进入安装目录下的路径才能执行。 另外,参考资料中提到的第三方工具,比如GPU-Z或MSI Afterburner,这些都是常用的硬件监控工具。它们可以提供更详细的信息,比如显存使用情况、温度、核心频率等。对于需要实时监控的用户来说,这些工具可能更直观。 然后,用户可能是在进行深度学习训练时遇到问题,比如怀疑没有使用GPU。这时候除了查看GPU占用率,还需要检查任务管理器中CUDA的使用情况。任务管理器的GPU部分会显示同引擎的使用情况,如果CUDA的占用率高,说明模型确实在使用GPU进行计算。这一点在引用[2]中提到过,用户可能遇到CPU占用过高而GPU使用率低的情况,这时候需要确认代码是否配置正确,比如TensorFlow或PyTorch是否调用了GPU。 还要考虑用户可能没有正确安装显卡驱动,或者没有安装CUDA工具包,导致无法使用GPU。这时候可能需要指导用户检查驱动状态,或者通过设备管理器查看显卡是否被识别。 另外,用户提到磁盘占用率有时达到100%,这可能是因为数据加载部分成为瓶颈,导致GPU等待数据,从而利用率低。这时候可以建议用户优化数据加载,比如使用更快的存储设备,或者增加数据预读取的线程数。 总结一下,回答应该包括以下几个步骤: 1. 使用任务管理器查看GPU占用率。 2. 使用命令行工具nvidia-smi。 3. 第三方工具如GPU-Z和MSI Afterburner。 4. 检查CUDA使用情况以确认深度学习框架是否正确使用GPU。 5. 附加建议,如检查驱动安装、优化数据加载等。 需要确保步骤清晰,每个方法都有具体的操作指导,比如如何打开任务管理器,如何找到GPU选项卡。同时,结合参考资料中的信息,比如引用[2]提到的情况,提醒用户在深度学习训练中如何确认GPU是否被使用,避免CPU成为瓶颈。 可能还需要注意用户权限问题,比如某些工具可能需要管理员权限才能运行。此外,对于同的显卡厂商(如NVIDIA、AMD、Intel),方法可能略有同,但用户的问题没有具体说明,所以主要针对常见的NVIDIA显卡。 最后,生成相关问题时要围绕GPU监控、性能优化、故障排除等方面,帮助用户进一步解决问题。</think>### 如何在 Windows 系统中检查 GPU 占用率? #### 方法 1:通过任务管理器查看 1. **打开任务管理器** 按快捷键 `Ctrl + Shift + Esc` 或右键任务栏选择“任务管理器”。 2. **切换到“性能”选项卡** 在左侧列表中找到 **GPU** 选项,点击后可以看到以下信息: - **GPU 引擎占用率**:显示同引擎(如 3D、视频编解码、CUDA 等)的实时占用百分比。 - **专用 GPU 内存使用情况**:显存占用率。 - **共享 GPU 内存使用情况**:系统内存中用于 GPU 的部分。 **注意**:此功能仅支持 Windows 10 版本 1709 或更高及 Windows 11[^2]。 #### 方法 2:使用命令行工具 `nvidia-smi` 1. **打开命令提示符或 PowerShell** 按 `Win + R` 输入 `cmd` 或 `powershell`。 2. **运行命令** 输入 `nvidia-smi`,查看输出中的 `GPU-Util` 字段,显示 GPU 利用率百分比。 示例输出: ``` +-----------------------------------------------------------------------------+ | NVIDIA-SMI 512.15 Driver Version: 512.15 CUDA Version: 11.6 | |-------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | |===============================+======================+======================| | 0 NVIDIA GeForce ... WDDM | 00000000:01:00.0 On | N/A | +-------------------------------+----------------------+----------------------+ | GPU Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |====================================+======================+======================| | 0 45C P0 25W / 130W | 2000MiB / 6144MiB | 45% Default | +------------------------------------+----------------------+----------------------+ ``` **说明**:`GPU-Util` 表示 GPU 计算核心的实时占用率[^1]。 #### 方法 3:第三方工具 1. **GPU-Z** - 下载地址:[TechPowerUp GPU-Z](https://www.techpowerup.com/gpuz/) - 功能:实时监控 GPU 负载、温度、显存占用等。 2. **MSI Afterburner** - 支持自定义监控面板,可同时查看 CPU、GPU 使用率和温度。 #### 附加建议(针对深度学习场景) - **检查 CUDA 使用情况** 在任务管理器的 GPU 选项卡中,若 `CUDA` 引擎占用率接近 100%,说明模型正在使用 GPU 计算[^2]。 - **优化数据加载** 若 GPU 占用率低但 CPU/磁盘占用率高,可能是数据预处理成为瓶颈,建议使用更高效的数据加载方式(如多线程读取或预加载到内存)。 --- ###
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值