我正在尝试编写一个python脚本,以确定哪个GPU (专用的还是集成的)正在运行。到目前为止,通过运行dxdiag并解析每个gpu设备的输出模式,我已经成功地使其工作起来,但是这花费的时间太长了。有人知道dxdiag是怎么得到这个信息的吗?有办法通过Windows管理工具获取信息吗?任何帮助都是非常感谢的。
谢谢
发布于 2016-06-15 14:41:41
DXDiag --大多数--可能从WMI表中获取数据。不过我得确认一下。
wmic PATH Win32_VideoController GET Adapterram将为您提供您正在寻找的信息。如果您需要更多信息,只需在上述命令下面运行即可。
wmic PATH Win32_VideoController如果您想要GPU名称
wmic PATH Win32_VideoController GET Name更新的
为更好的理解而增加一个例子。您可以使用deviceid在下面提到的表之间映射并获取信息。
instance of Win32_VideoController
{
AdapterCompatibility = "Intel Corporation";
AdapterDACType = "Internal";
AdapterRAM = 1073741824;
Availability = 3;
Caption = "Intel(R) HD Graphics 4600";
ConfigManagerErrorCode = 0;
ConfigManagerUserConfig = FALSE;
CreationClassName = "Win32_VideoController";
CurrentBitsPerPixel = 32;
CurrentHorizontalResolution = 1920;
CurrentNumberOfColors = "4294967296";
CurrentNumberOfColumns = 0;
CurrentNumberOfRows = 0;
CurrentRefreshRate = 59;
CurrentScanMode = 4;
CurrentVerticalResolution = 1080;
Description = "Intel(R) HD Graphics 4600";
DeviceID = "VideoController1";
DitherType = 0;
DriverDate = "20150911000000.000000-000";
DriverVersion = "20.19.15.4285";
InfFilename = "oem79.inf";
InfSection = "iHSWD_w10";
InstalledDisplayDrivers = "igdumdim64.dll,igd10iumd64.dll,igd10iumd64.dll,igd12umd64.dll,igdumdim32,igd10iumd32,igd10iumd32,igd12umd32";
MaxRefreshRate = 75;
MinRefreshRate = 50;
Monochrome = FALSE;
Name = "Intel(R) HD Graphics 4600";
PNPDeviceID = "PCI\\VEN_8086&DEV_0412&SUBSYS_18E5103C&REV_06\\3&11583659&0&10";
Status = "OK";
SystemCreationClassName = "Win32_ComputerSystem";
SystemName = "---------";
VideoArchitecture = 5;
VideoMemoryType = 2;
VideoModeDescription = "1920 x 1080 x 4294967296 colors";
VideoProcessor = "Intel(R) HD Graphics Family";
};
instance of Win32_PnPEntity
{
Caption = "Intel(R) HD Graphics 4600";
ClassGuid = "{4d36e968-e325-11ce-bfc1-08002be10318}";
CompatibleID = {"PCI\\VEN_8086&DEV_0412&REV_06", "PCI\\VEN_8086&DEV_0412", "PCI\\VEN_8086&CC_030000", "PCI\\VEN_8086&CC_0300", "PCI\\VEN_8086", "PCI\\CC_030000", "PCI\\CC_0300"};
ConfigManagerErrorCode = 0;
ConfigManagerUserConfig = FALSE;
CreationClassName = "Win32_PnPEntity";
Description = "Intel(R) HD Graphics 4600";
DeviceID = "PCI\\VEN_8086&DEV_0412&SUBSYS_18E5103C&REV_06\\3&11583659&0&10";
HardwareID = {"PCI\\VEN_8086&DEV_0412&SUBSYS_18E5103C&REV_06", "PCI\\VEN_8086&DEV_0412&SUBSYS_18E5103C", "PCI\\VEN_8086&DEV_0412&CC_030000", "PCI\\VEN_8086&DEV_0412&CC_0300"};
Manufacturer = "Intel Corporation";
Name = "Intel(R) HD Graphics 4600";
PNPClass = "Display";
PNPDeviceID = "PCI\\VEN_8086&DEV_0412&SUBSYS_18E5103C&REV_06\\3&11583659&0&10";
Present = TRUE;
Service = "igfx";
Status = "OK";
SystemCreationClassName = "Win32_ComputerSystem";
SystemName = "-------";
};https://stackoverflow.com/questions/37825360
复制相似问题