Commit 238e2ed2 authored by Samuel Pitoiset's avatar Samuel Pitoiset Committed by Marge Bot
Browse files

radv: enable VK_KHR_8bit_storage on GFX6-GFX7



Enabling a Vulkan extension doesn't mean that all features need
to be implemented. DOOM Eternal crashes at launch if that ext
is not supported but it doesn't matter if the features are enabled
or not.

Let's enable it like we did for VK_KHR_16bit_storage.

Cc: 19.3 20.0 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset's avatarSamuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen's avatarBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Tested-by: Marge Bot <!4299>
Part-of: <!4299>
parent bd22a0f7
Pipeline #123831 passed with stages
in 8 minutes and 44 seconds
This commit is part of merge request !4299. Comments created here will be created in the context of that merge request.
......@@ -109,7 +109,7 @@ EXTENSIONS = [
Extension('VK_KHR_xlib_surface', 6, 'VK_USE_PLATFORM_XLIB_KHR'),
Extension('VK_KHR_multiview', 1, True),
Extension('VK_KHR_display', 23, 'VK_USE_PLATFORM_DISPLAY_KHR'),
Extension('VK_KHR_8bit_storage', 1, 'device->rad_info.chip_class >= GFX8 && !device->use_aco'),
Extension('VK_KHR_8bit_storage', 1, '!device->use_aco'),
Extension('VK_EXT_direct_mode_display', 1, 'VK_USE_PLATFORM_DISPLAY_KHR'),
Extension('VK_EXT_acquire_xlib_display', 1, 'VK_USE_PLATFORM_XLIB_XRANDR_EXT'),
Extension('VK_EXT_buffer_device_address', 1, True),
......
  • Hello. How can I fix this error? Mesa 20.1.0-devel. Gfx7 adapter error_doom

  • Weird, it seemed to me that Doom Eternal only requested the ext but didn't use the features. Does it work with that change reverted?

  • I compiled the Mesa today and patches for Doom were already present and now such an error. Vulkaninfo shows that access is open (true)

  • I will try to reproduce later today.

  • Thanks, I will wait with impatience.

  • Are you using ACO?

  • No, llvm.

  • It doesn't make sense to me because Doom Eternal doesn't request 8-bit storage on my side, I'm on GFX6 though but it shouldn't make any big diff. That said, does this branch help https://gitlab.freedesktop.org/hakzsam/mesa/-/commits/radv_fix_8bit_16bit_storage_gfx6_gfx7 ?

  • if I understand you correctly, doom uses 16 bit?

  • Then maybe I found my mistake. error1_doom_

  • What do you mean?

  • And now it worked. Снимок_экрана_от_2020-03-26_22-18-59 Many thanks for the help! UPD: Only LLVM work, ACO crush. And DXVK_HUD not working.

    Edited by Johnny_D
  • Didn't you try my branch? Also does it work if you only do that change for 16bit?

    Edited by Samuel Pitoiset
  • First, I fixed my path for 8 bits and got an error that was higher. Then you wrote that 16bit is used and I corrected it in my own way for 16 bit and now it seems to work. If I use drivers without my changes I get the error "VK_KHR_8bit_storage". In your branch I saw about spliting storage of 16bit - do you mean that?

  • Well, if I understand correctly, you are enabling a feature yourself which isn't supported by the driver?

    By trying my branch I mean, pull it, build mesa and report if the game works with that or not.

  • The launch with ACO also crashes after the inscription "Experimental compiler backend enabled. Here be dragons!".

    Edited by Johnny_D
  • The only thing you have to do is to pull and test my branch. :)

  • I did it! Vulkan is working! Thanks a lot! You're stunning!

    Edited by Johnny_D
  • Patch applied here too on mesa 20.2-devel branch (9e790fea) unfortunately the >GFX8 check is mandatory :). I tryed to force it even in radv_device.c, so the game "launch" but stay at black screen and then it crash at a deeper >GFX8 runtime check. I have a 7970m so wayyy too old for the current implementation for 8bit stuff (and some 16 bit too)... So sad, but at the end i must admit playing DooM Eternal with a 7970m would not be the best experience, maybe time to upgrade to a >GFX8 :) By the time, I will force DooM to use amdvlk because mesa/llvm is less than half the speed... (less GPU perf plus higher cpu usage).

    thanks anyway ! I learned some mesa/radv/vulkan internal stuff today

    Edited by Clement Chastanier
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment