我试图制作一个软件来检查有关用户视频图形卡的一些信息(比如: GPU时钟速度、总线宽度等等)。
我在TechPowerUp GPU软件中看到了这些信息,以及在下面的图片中可以看到的一些SDK的名称:
CUDA工具包7用于Nvidia,APP SDK用于AMD
现在我有两个问题:
发布于 2015-04-16 07:38:04
也许VideoController类或GPUinformation类可以帮助您。
示例:
using System.Management;
public partial class Win_Win32_VideoController : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
using (var searcher = new ManagementObjectSearcher("select * from Win32_VideoController"))
{
foreach (ManagementObject obj in searcher.Get())
{
Response.Write("Name - " + obj["Name"] + "</br>");
Response.Write("DeviceID - " + obj["DeviceID"] + "</br>");
Response.Write("AdapterRAM - " + obj["AdapterRAM"] + "</br>");
Response.Write("AdapterDACType - " + obj["AdapterDACType"] + "</br>");
Response.Write("Monochrome - " + obj["Monochrome"] + "</br>");
Response.Write("InstalledDisplayDrivers - " + obj["InstalledDisplayDrivers"] + "</br>");
Response.Write("DriverVersion - " + obj["DriverVersion"] + "</br>");
Response.Write("VideoProcessor - " + obj["VideoProcessor"] + "</br>");
Response.Write("VideoArchitecture - " + obj["VideoArchitecture"] + "</br>");
Response.Write("VideoMemoryType - " + obj["VideoMemoryType"] + "</br>");
}
}
}
}
您还可以参考CUDAfy.net库。
发布于 2017-04-16 19:11:52
您可以使用这个库获得基本信息:
https://github.com/falahati/NvAPIWrapper
目前,它不支持时钟速度或GPU的使用,也不支持传感器信息(temp),但它可以获得总线的宽度,内存,使用的内存和核心。但是,向库中添加新函数有着坚实的基础,因此,您也可以扩展它以满足您的需要,如果您知道需要添加到库中的NVAPI的哪些功能,并且熟悉封送处理的基本知识,则可能在不到一小时或更短的时间内就可以扩展它。
更新2018年:它现在支持GPU时钟信息、温度传感器和使用信息。
但是对于当前可检索的信息,您需要获得所有当前连接的物理GPU的列表。使用NvAPIWrapper.GPU.PhysicalGPU.GetPhysicalGPUs()
静态方法是可能的。此方法返回一个NvAPIWrapper.GPU.PhysicalGPU
的数组。
现在,您可以使用该类的属性检索您想要的信息。
NvAPIWrapper.GPU.PhysicalGPU.Bios
:为您提供VBIOS版本NvAPIWrapper.GPU.PhysicalGPU.Board
:给你图板信息NvAPIWrapper.GPU.PhysicalGPU.BusInfo
:获取GPU总线信息NvAPIWrapper.GPU.PhysicalGPU.CUDACores
:获取为该GPU定义的核心总数NvAPIWrapper.GPU.PhysicalGPU.CurrentPCIEDownStreamWidth
:获取用于PCIE接口下游的PCIE通道数NvAPIWrapper.GPU.PhysicalGPU.FullName
:获取GPU全名NvAPIWrapper.GPU.PhysicalGPU.GPUType
:指示GPU是集成的还是离散的NvAPIWrapper.GPU.PhysicalGPU.IRQ
:获取GPU中断号NvAPIWrapper.GPU.PhysicalGPU.IsQuadro
:指示此GPU是否属于四路产品线NvAPIWrapper.GPU.PhysicalGPU.MemoryInfo
:向您提供有关内存和内存使用情况的所有信息NvAPIWrapper.GPU.PhysicalGPU.PCIIdentifiers
:提供有关硬件PCI ids的信息。NvAPIWrapper.GPU.PhysicalGPU.PhysicalFrameBufferSize
和NvAPIWrapper.GPU.PhysicalGPU.VirtualFrameBufferSize
:获取此GPU以KB为单位的帧缓冲区的大小NvAPIWrapper.GPU.PhysicalGPU.ShaderSubPipeLines
:获取GPU着色器SubPipes或SM单元的数量如果您需要一个特定的函数,您无法在这个版本的库,请随时打开一个问题。
发布于 2015-04-16 07:13:30
我对AMD工具没有任何经验,但我们成功地使用了NVIDIA的NVAPI (https://developer.nvidia.com/nvapi)来自C#
我们使用的版本只是作为一个静态库提供的,我们不能调用它。最后,我们在C++/CLR中创建了一个瘦包装器库,然后我们可以从C#代码中调用该库。
https://stackoverflow.com/questions/29667666
复制相似问题