Skip to content

[CI] capture-hw-details.sh: igc64.dll version retrieval is unreliable #5440

@kwasd

Description

@kwasd

Describe the bug

In CI, to report environment details, we are using the following command:

(Get-ChildItem c:/Windows/System32/DriverStore/FileRepository/*/igc64.dll).VersionInfo.ProductVersion

However, there are cases when multiple Intel GPU driver versions are present on the machine. This breaks Windows CI by outputting multi-line value.
I've tried to keep only one version by removing the old ones, but it seems like it is not always possible: after the machine reboot, the old version in the store is restored on some machines.

It is unclear how to determine which one will be used.

What do I have on the machine:

C:\Program Files (x86)\Intel\oneAPI\2025.2\bin\igc64.dll
C:\Program Files (x86)\Intel\oneAPI\ocloc\2025.2\bin\igc64.dll
C:\Program Files (x86)\Intel\oneAPI\ocloc\latest\bin\igc64.dll
C:\Program Files (x86)\Intel\oneAPI\toolkit_linking_tool\.envs\2025.2\oneapi-base-toolkit\ocloc\bin\igc64.dll
C:\Windows\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_3ce071cebbde2df4\igc64.dll
C:\Windows\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_e1ca847850dfba91\igc64.dll

Which one should we report?

  1. The version from the currently loaded driver
  2. The latest version from DriverStores
  3. The one from currently loaded environment (e.g. with setvars.bat)

I am currently exploring ways to do 1 (see #5439), but no reliable way found so far: 111995c works for LNL machine (loaded driver 32.0.101.6737, but also 32.0.101.7029 present in store), but not for A770 machine (with only 32.0.101.7028 driver).

Should I keep searching for a solution for 1, or I am doing this a wrong way?

Environment details

OS: Windows

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions