如何找到 PC 上的 GPU 数量?

How do you find the amount of GPUs on a PC?

我一直在尝试创建一个基本的应用程序来显示计算机上的图形卡总数 运行 程序,但一直找不到任何方法来做到这一点?是否有 Nvidia 的 NvAPI 之类的框架允许我执行此操作?我已经查过了,好像主要是针对单显卡的。

您想使用通用请求 (WMI),以便统计您系统的所有 GPU。

我有两个 GPU 且此测试通过:

// using System.Management;

private int GetGPUCount()
{
    var searcher = new ManagementObjectSearcher("select * from Win32_VideoController");
    return searcher.Get().Count;
}

[TestMethod]
public void CountGPUs()
{
    Assert.AreEqual(2, GetGPUCount());
}