Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
20629 Discussions

Fix for Intel and NVIDIA Vulkan driver. (RPCS3, Xenia)

Parapele
New Contributor I
30,581 Views

Hello everyone! I just want let you know this, so i made separate topic for easy search. Latest Intel and NVIDIA Vulkan driver has the same bug - they don't write in registry proper data. Last installation that work properly is 4815 driver.

This is related to

/message/507600 https://communities.intel.com/message/507600

https://forums.rpcs3.net/thread-197673.html https://forums.rpcs3.net/thread-197673.html

https://forums.rpcs3.net/thread-197839.html https://forums.rpcs3.net/thread-197839.html

https://github.com/ValveSoftware/Dota-2-Vulkan/issues/145 https://github.com/ValveSoftware/Dota-2-Vulkan/issues/145

I attached fixes for Intel and NVIDIA drivers. Proof of work.

0 Kudos
7 Replies
idata
Employee
22,115 Views

Hello Parapele,

Thank you for bringing this matter to the Community.

Please let us review this matter, I will update the thread as soon as I have more information available.

Regards,

Amy C.

0 Kudos
Parapele
New Contributor I
22,115 Views

Fix for new driver 4944.

0 Kudos
idata
Employee
22,115 Views

Thank you for your patience.

We still looking into this issue. Do you mind sharing your feedback regarding driver .4944? Is the file attached the feedback for it?

Regards,

Amy C.

0 Kudos
Parapele
New Contributor I
22,115 Views

Hello Amy. Well in new driver nothing change.

Quote from RPCS3 dev:

The issue is that Intel and NVIDIA drivers aren't registering the icd key, plain and simple.

It's a DRIVER bug, whether you think it is or not doesn't change that fact.

Older Vulkan versions detect whether Vulkan is installed or not by checking the register ICD key. For applications/games built against older Vulkan versions, if you don't register the ICD key on driver installation (or manually add it in afterwards) they will NOT work with these drivers now. This meaning that NVIDIA and Intel has simply broken compatibility with applications/games using older Vulkan versions.

https://forums.rpcs3.net/thread-197839-post-294587.html# pid294587 https://forums.rpcs3.net/thread-197839-post-294587.html# pid294587

0 Kudos
idata
Employee
22,115 Views

Thank you for that information /message/526481 Parapele.

I will add it to our investigation, and we will be updating the thread as soon as possible.

Regards,

Amy C.

0 Kudos
RonaldM_Intel
Moderator
22,115 Views

Hello Parapele,

I checked this report with our Vulkan dev team and confirmed that the change of the Vulkan key you are seeing is intentional.

Due to the upcoming https://docs.microsoft.com/en-us/windows-hardware/drivers/develop/getting-started-with-universal-drivers Universal Windows Drivers (UWD) and as per Microsoft's https://docs.microsoft.com/en-us/windows-hardware/drivers/install/using-a-universal-inf-file# which-inf-sections-are-invalid-in-a-universal-inf-file UWD requirements the key was moved from the old location you use in your .reg file to a new one. The name of the key is a bit more complex now, and contains a unique device identifier (distinct for each machine).

The main point is however, that this key is not intended to be used directly by applications. Applications shall access Vulkan API using the Vulkan Loader (aka Vulkan RunTime or VulkanRT) which is distributed with the driver (VulkanRT is an open source component that all graphics vendors are shipping with their drivers. It can be also downloaded by game developers as a part of Vulkan SDK). When changing the registry key used by our driver, we also updated VulkanRT (in a way that it now understands both old and new keys) what ensured that existing games continue to work.

RPCS3 developers do not use the loader distributed with the graphics cards, but chose instead to statically link to a certain version from Vulkan SDK.

I can see in https://github.com/RPCS3/rpcs3/releases/tag/v0.0.5 their recent release notes, that they already solved the issue in their product by using a newer version of that library.

Please note that their approach (static linking) does not guarantee not having similar problems in the future.

I hope this information helps understanding what and why the change. We also wish to thank you for coming up with this work around as it can help many other users.

Best Regards,

Ronald M.

0 Kudos
Parapele
New Contributor I
22,115 Views

Thanks for response Ronald_Intel .

0 Kudos
Reply