首页 > 解决方案 > C#:使用 SharpDX 获取 GPU 使用情况

问题描述

我目前正在尝试从 GPU 中查找实时/设置数据。这是使用 C# 在 WPF 模板中制作的程序。在搜索了近一个小时后,我想你们中的一些人可能对我的问题有一个答案。

我正在专门寻找一个人的 GPU 使用情况,以及 GPU 的免费/可用 VRAM。我正在查看 DirectX/SharpDX,因为 DirectX 能够找到我正在寻找的特定数据。但鉴于当前版本的 .net 并不真正支持 DirectX,我将 SharpDX 视为一种可能的解决方案。

但是,我找不到任何关于在使用 SharpDX 时如何查找 GPU 使用情况或空闲 VRAM 的示例。任何答案/链接将不胜感激。谢谢!

标签: c#.netgpusharpdxtaskmanager

解决方案


尝试使用 System.Management 命名空间。以下是示例代码

using System.Management;    
ManagementObjectSearcher objSearch= new ManagementObjectSearcher("select * from Win32_VideoController");

foreach (ManagementObject share in objSearch.Get())
{   
    // Some logic...

    //if want to loop through properties
    foreach (PropertyData PC in share.Properties)
    {
         //some logic...
    }
}

推荐阅读