gpt4 book ai didi

C (Windows) - GPU 使用率(负载百分比)

转载 作者:可可西里 更新时间:2023-11-01 14:23:55 32 4
gpt4 key购买 nike

根据 Internet 上的许多来源,可以使用 D3DKMTQueryStatistics 获取 GPU 使用率(负载)。

How to query GPU Usage in DirectX?

我已成功使用此处的代码并稍作修改获取内存信息: http://processhacker.sourceforge.net/forums/viewtopic.php?t=325#p1338

但是我没有找到 D3DKMT_QUERYSTATISTICS 结构的成员应该携带有关 GPU 使用情况的信息。

最佳答案

查看gpumon.c中的EtpUpdateNodeInformation函数.它查询每个 GPU 节点的进程统计信息。每个显卡可以有多个处理节点:

queryStatistics.Type = D3DKMT_QUERYSTATISTICS_PROCESS_NODE
...
totalRunningTime += queryStatistics.QueryResult.ProcessNodeInformation.RunningTime.QuadPart
...
PhUpdateDelta(&Block->GpuRunningTimeDelta, totalRunningTime);
...
block->GpuNodeUsage = (FLOAT)(block->GpuRunningTimeDelta.Delta / (elapsedTime * EtGpuNodeBitMapBitsSet));

它收集进程运行时间并除以实际时间跨度。

关于C (Windows) - GPU 使用率(负载百分比),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29611611/

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