C# CPU 和 GPU 温度

标签 c# gpu cpu temperature

我正在为系统性能创建一个个人监控程序,但我在弄清楚 C# 如何检索 CPU 和 GPU 温度信息时遇到了问题。

我已经让程序通过 PerformanceCounter 检索 CPU 负载和频率信息(以及各种其他信息),但我无法找到 CPU 温度的实例、对象和计数器变量。

此外,我需要能够获得不止一个 GPU 的温度,因为我有两个。

我该怎么办?

最佳答案

您可以为此使用 WMI,有一个用于 WMI 的 c# 代码生成器,在创建 WMI 请求时很有帮助,因为它没有很好的文档记录。

可在此处找到 WMI 代码生成器:http://www.microsoft.com/en-us/download/details.aspx?id=8572

快速尝试生成如下内容:

  public static void Main()
    {
        try
        {
            ManagementObjectSearcher searcher = 
                new ManagementObjectSearcher("root\\WMI", 
                "SELECT * FROM MSAcpi_ThermalZoneTemperature"); 

                          foreach (ManagementObject queryObj in searcher.Get())
            {
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("MSAcpi_ThermalZoneTemperature instance");
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("CurrentTemperature: {0}", queryObj["CurrentTemperature"]);
            }
        }
        catch (ManagementException e)
        {
            MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
        }
    }

这可能不是您所需要的,只需尝试使用可用的属性和类即可

关于C# CPU 和 GPU 温度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29607595/

相关文章:

c# - 该语言不支持“TEST”

CPU 和 GPU 之间共享的 iOS 内存以及这对读取意味着什么

c++ - 如何在 x86 程序中以编程方式获取 Nvidia 驱动程序版本?

pytorch - 为什么即使我将可见 CUDA 设置为 2,DDP 中的 `local_rank` 仍为零?

kubernetes - k8s hpa获取不到cpu信息

c - 为什么这个CPU运行速度更快?

c++ - 关于整数和浮点性能的 SSE4 和 SSE2 - 哪个更快?

c# - Azure Cosmos C# SDK v3 返回无效的继续 token

c# - ASP.Net ReportViewer - 无法隐藏文档结构图

c# - 语言本地化只在 Debug模式下工作