diff options
author | Samuel Pitoiset <[email protected]> | 2019-10-31 09:30:47 +0100 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2019-11-06 09:20:30 +0100 |
commit | f010b90ac5c8b3e8df3264086e472bd5df1cb9bc (patch) | |
tree | e13a0bb9998fce79997728359ac905657a907f40 /src/amd/vulkan/radv_cmd_buffer.c | |
parent | c0f76528ae237c9c1ddc6e4356aa9e0a86942069 (diff) |
radv/gfx10: enable wave32 for compute based on shader's wavesize
This will allow to change wavesize on-demand.
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_cmd_buffer.c')
-rw-r--r-- | src/amd/vulkan/radv_cmd_buffer.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index a172767e3dd..87320e6d822 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -4850,6 +4850,11 @@ radv_emit_dispatch_packets(struct radv_cmd_buffer *cmd_buffer, ASSERTED unsigned cdw_max = radeon_check_space(ws, cs, 25); + if (compute_shader->info.wave_size == 32) { + assert(cmd_buffer->device->physical_device->rad_info.chip_class >= GFX10); + dispatch_initiator |= S_00B800_CS_W32_EN(1); + } + if (info->indirect) { uint64_t va = radv_buffer_get_va(info->indirect->bo); |