You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用LibreHardwareMonitor获取GPU使用率始终为0的问题求助

解决LibreHardwareMonitor获取GPU负载始终为0的问题

问题原因分析

  1. 自定义Visitor未正确触发数据更新:你实现的GetGPULoad类中VisitSensor为空,且依赖hardware.Update()的方式没有完整刷新传感器数据,导致获取的是初始的0值。
  2. 传感器筛选逻辑不精准:GPU存在多个SensorType.Load类型的传感器(如核心、显存、编码器负载),你的代码会遍历所有这类传感器,最后可能覆盖为非核心负载的0值。
  3. 权限不足:读取GPU硬件状态需要管理员权限,非管理员运行时无法获取真实数据,返回默认0值。
  4. 未检查传感器值的有效性:传感器Value是可空类型,直接ToString可能拿到空值或默认0。

解决方法及修正代码

1. 简化数据刷新逻辑,移除自定义Visitor

LibreHardwareMonitor内置的Computer.Update()方法会自动完成所有硬件和传感器的数据刷新,无需自定义Visitor类。

2. 精准筛选GPU核心负载传感器

只针对GPU核心的负载传感器进行读取,避免获取其他无关传感器的0值。

3. 确保程序以管理员身份运行

右键程序选择「以管理员身份运行」,或在项目中配置强制管理员权限:

  • Visual Studio中打开项目属性 → 安全性 → 启用ClickOnce安全设置
  • 编辑app.manifest,将requestedExecutionLevel改为:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

修正后的完整代码

using LibreHardwareMonitor.Hardware;

// 初始化Computer实例,仅启用GPU监测
Computer computer = new Computer
{
    IsGpuEnabled = true
};

computer.Open();
// 直接调用Update刷新所有硬件及传感器数据
computer.Update();

foreach (IHardware hardware in computer.Hardware)
{
    // 匹配所有类型的GPU硬件
    if (hardware.HardwareType is HardwareType.GpuNvidia or HardwareType.GpuAmd or HardwareType.GpuIntel)
    {
        foreach (ISensor sensor in hardware.Sensors)
        {
            // 筛选GPU核心负载传感器(名称通常包含"Core")
            if (sensor.SensorType == SensorType.Load 
                && sensor.Name.Contains("Core", StringComparison.OrdinalIgnoreCase))
            {
                // 确保传感器值不为空后再赋值
                if (sensor.Value.HasValue)
                {
                    GPUload.Text = $"{sensor.Value.Value:F1}%";
                }
                // 找到目标传感器后跳出循环,避免被其他传感器覆盖
                break;
            }
        }
    }
}

computer.Close();

额外注意事项

  • 确保使用最新稳定版的LibreHardwareMonitor NuGet包,旧版本可能对新GPU型号支持不足。
  • 如果仍无法获取数据,检查GPU驱动是否为最新版本,驱动过旧可能导致硬件监测失败。

内容的提问来源于stack exchange,提问作者Alder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 10:05:23