gpt4 book ai didi

windows-10 - 如何使用 python 测量 Windows 中每个进程的 GPU 使用率?

转载 作者:行者123 更新时间:2023-12-05 07:31:42 25 4
gpt4 key购买 nike

我想像在 Windows taskmgr.exe 中那样测量每个进程的 GPU 使用率,但是在尝试使用 pyNVML 库时我遇到了几个问题。因此,我有几个问题。

首先,目前是否可以使用 Python 测量 Windows 中每个进程的 GPU 使用率?我已经尝试过 nvidia-smi 查询,但这似乎没有显示已用内存和利用率百分比每个进程

其次,如果可以使用 Python 以这种方式测量 GPU 使用情况,我想以与 Windows 10 的 Windows taskmgr.exe 中类似的方式测量和显示它。

到目前为止,这是我的代码:

nvmlInit()
deviceCount = nvmlDeviceGetCount()
#print(deviceCount)
for device_id in range(deviceCount):
hd = nvmlDeviceGetHandleByIndex(device_id)
#print(handle)

cps = nvmlDeviceGetGraphicsRunningProcesses(hd)

for ps in cps :
pp = ps.pid
#print(pp)
try :
name = str(nvmlSystemGetProcessName(ps.pid))
n = name.split("\\")
#print(n[len(n)-1][:-1])
process_name = n[len(n)-1][:-1]
if process_name == 'chrome.exe':
print(process_name, pp, ps.usedGpuMemory)
except:
pass

我的结果:

chrome.exe 16688 None

nvidia-smi

如您所见,这不会显示每个进程的 GPU 内存使用情况,但我需要 taskmgr 的 GPU 部分中显示的信息。 (我不需要可视化。)

taskmgr

我的电脑规范是 Windows 10 pro、GTX 950、i5-6600

如果目前这在 Python 中是不可能的,您是否有任何其他建议来自动收集每个进程的 GPU 使用情况。

谢谢。

最佳答案

查看 Jonathan DEKHTIAR 的答案 Here解释它不起作用的原因。作为解决方法,您可以尝试从 powershell Get-Counter -Counter "\GPU Engine(*)\Utilization Percentage"

获取值

关于windows-10 - 如何使用 python 测量 Windows 中每个进程的 GPU 使用率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51702335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com