radv: Limit workgroup size to 1024.
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Wed, 18 Dec 2019 09:21:40 +0000 (10:21 +0100)
committerMarge Bot <eric+marge@anholt.net>
Wed, 18 Dec 2019 20:41:18 +0000 (20:41 +0000)
Fixes a hang with geekbench.

The existence of RX 580 and NAVI10 results shows that the generations
before and after this do not have the issue. (They show up on the
website). So this is likely a GFX9 only issue.

This is not something weird like LDS size since none of the shaders
seem to use LDS.

CC: <mesa-stable@lists.freedesktop.org>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3145>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3145>

src/amd/vulkan/radv_device.c

index 2a65fb9cc3a7dd9eb396b6bff21fee888676cbe6..978194f4f2ab549b2c21a9bcd704b5ff2360b216 100644 (file)
@@ -1286,11 +1286,11 @@ void radv_GetPhysicalDeviceProperties(
                .maxFragmentCombinedOutputResources       = 8,
                .maxComputeSharedMemorySize               = 32768,
                .maxComputeWorkGroupCount                 = { 65535, 65535, 65535 },
-               .maxComputeWorkGroupInvocations           = 2048,
+               .maxComputeWorkGroupInvocations           = 1024,
                .maxComputeWorkGroupSize = {
-                       2048,
-                       2048,
-                       2048
+                       1024,
+                       1024,
+                       1024
                },
                .subPixelPrecisionBits                    = 8,
                .subTexelPrecisionBits                    = 8,