Discovering GPU resources:
Those working in Windows might use (in VB.net - similar in C++ and C#)
Imports System.Management
note that you may need to add a Project Reference
Dim searcher As New ManagementObjectSearcher("rootCIMV2", "SELECT * FROM Win32_VideoController")
For Each mo As ManagementObject In searcher.Get()
' of interest are mo("AdapterCompatibility"),
' mo("AdapterRAM") ,
' mo("Description"),
' mo("VideoProcessor")
' and mo("VideoModeDescription")
' we have not seen values in mo("MaxNumberControlled")
Next
This provides information like
compatibility=Intel Corporation
RAM=1,894,344,704
Description=Intel(R) G45/G43 Express Chipset
Processor=Intel(R) 4 Series Express Chipset Family
mode=1024 x 768 x 4,294,967,296 colors