mesa-dist-win icon indicating copy to clipboard operation
mesa-dist-win copied to clipboard

RadV doesn't work

Open Quackdoc opened this issue 4 years ago • 5 comments

Running an rx580

set VK_ICD_FILENAMES=...\radeon_icd.x86_64.json

..\vkconfig.exe

Vulkan Development Status:

  • Layers override: "Validation" configuration
  • VULKAN_SDK environment variable: C:\VulkanSDK\1.2.189.2
  • Vulkan Loader version: 1.2.170
  • User-Defined Layers Paths from VK_LAYER_PATH environment variable: None
  • User-Defined Layers Paths from Vulkan Configurator: None
  • vk_layer_settings.txt uses the default platform path: C:\Users\Quack\AppData\Local\LunarG\vkconfig\override
  • Available Layers:
    • VK_LAYER_AMD_switchable_graphics (1.2.174)
    • VK_LAYER_OBS_HOOK (1.2.131)
    • VK_LAYER_VALVE_steam_overlay (1.2.136)
    • VK_LAYER_VALVE_steam_fossilize (1.2.136)
    • VK_LAYER_EOS_Overlay (1.2.136)
    • VK_LAYER_EOS_Overlay (1.2.136)
    • VK_LAYER_ROCKSTAR_GAMES_social_club (1.0.70)
    • VK_LAYER_LUNARG_api_dump (1.2.189)
    • VK_LAYER_LUNARG_device_simulation (1.2.189)
    • VK_LAYER_LUNARG_gfxreconstruct (1.2.189)
    • VK_LAYER_KHRONOS_synchronization2 (1.2.189)
    • VK_LAYER_KHRONOS_validation (1.2.189)
    • VK_LAYER_LUNARG_monitor (1.2.189)
    • VK_LAYER_LUNARG_screenshot (1.2.189)
  • Cannot find a compatible Vulkan installable client driver (ICD).

Quackdoc avatar Oct 17 '21 19:10 Quackdoc

Note that VK_ICD_FILENAMES only accepts absolute paths. Also @jpark37 may be able to answer to this as he's the one making the port to Windows.

pal1000 avatar Oct 20 '21 15:10 pal1000

Giving it an absolute path did not help

Quackdoc avatar Oct 20 '21 18:10 Quackdoc

Open the JSON file itself, and replace "./vulkan_radeon.dll" with ".\\vulkan_radeon.dll" to make the loader happy.

EDIT: I can update Mesa at some point to modify the JSON generation, but it's surprisingly difficult because the Python JSON lib automatically converts backslash to slash for some reason.

EDIT 2: Actually Meson's fault, not Python.

Be aware that RADV on Windows is more or less a null driver. You can't play games with it.

jpark37 avatar Oct 20 '21 20:10 jpark37

I actually have logic fixing the JSON for both RADV and lavapipe post build as I know they were both kinda broken from day 1.

Lavapipe has absolute path in JSON for library_path which is also bad as it's not portable and also has / as separator as well.

pal1000 avatar Oct 21 '21 09:10 pal1000

I have an MR here to try to fix the issue in Mesa itself for RADV: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13461

I hadn't noticed because I was copying files around in a way that made the forward slash work somehow, but I can stop doing that with the backslash, which I noticed the regular NVIDIA driver uses.

jpark37 avatar Oct 21 '21 09:10 jpark37