Graphics Card (GPU)

Graphics Processing Unit

SpecProbe can probe GPU information by calling the HardwareProber.Video property. This populates the following values in accordance to the available information:

Value
Notes

VideoCardName

Unavailable on systems that don't have glxinfo and NVIDIA Proprietary Drivers installed

How parsing works

This section describes how parsing works for the below systems:

Linux

GPU information can only be obtained by executing the glxinfo command with the -B switch, indicating that we only need basic GPU info. However, this is guaranteed to be fast.

Once the glxinfo command output is piped to the string, SpecProbe looks for the OpenGL renderer string line and gets the GPU name from this entry as appropriate.

This information is unavailable for Android devices. Consult your Android device specification for details. This information is also unavailable for PCs that don't have glxinfo and/or the NVIDIA proprietary drivers installed.

In case your system has an NVIDIA graphics card, SpecProbe tries to probe all the graphics card directories in the /proc/driver/nvidia/gpus folder. For each GPU, it tries to read the information file and get the Model value.

Windows

For Windows systems, it calls the native Windows API function EnumDisplayDevices() to get all the video cards installed on your system.

This may return duplicate entries for systems with multiple monitors (connected or not).

macOS

For macOS systems, it first checks to see if your application is set to run in a hardened macOS runtime.

You can tell SpecProbe that your application is hardened by calling the SetNotarized() function.

Hardened

If SpecProbe is told that your application is hardened, SpecProbe uses the CoreGraphics Quartz API to fetch the display information and get the model and the vendor numbers.

Not Hardened

If SpecProbe is told that your application is not hardened, SpecProbe uses the system_profile application to get information about the display. It gets the Device ID and the Vendor ID.

Finally, SpecProbe merges these two IDs to create a single video card name.

Last updated