summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_shader.c
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2020-02-20 08:50:29 +0100
committerMarge Bot <[email protected]>2020-02-26 07:58:47 +0000
commit568f1504098f6204bcc842d66be0126764cb7d13 (patch)
tree92470207036dabf3cb3ae1af3475812f47734c71 /src/amd/vulkan/radv_shader.c
parentea91b15a31369adafb8c7ecb1e345d24ee8d1948 (diff)
radv/gfx10: adjust the LDS size used to compute waves
It's 128KB per CU in WGP. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3899>
Diffstat (limited to 'src/amd/vulkan/radv_shader.c')
-rw-r--r--src/amd/vulkan/radv_shader.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index cad95f830aa..1220b4ae8b7 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -1336,11 +1336,9 @@ radv_get_max_waves(struct radv_device *device,
RADV_NUM_PHYSICAL_VGPRS / vgprs);
}
- /* LDS is 64KB per CU (4 SIMDs), divided into 16KB blocks per SIMD
- * that PS can use.
- */
+ unsigned max_lds_per_simd = device->physical_device->rad_info.lds_size_per_cu / device->physical_device->rad_info.num_simd_per_compute_unit;
if (lds_per_wave)
- max_simd_waves = MIN2(max_simd_waves, 16384 / lds_per_wave);
+ max_simd_waves = MIN2(max_simd_waves, max_lds_per_simd / lds_per_wave);
return max_simd_waves;
}