mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 11:38:05 +02:00
radeonsi: always use Wave64 for HS/GS/VS shader stages (except GS fast launch)
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5524>
This commit is contained in:
parent
9049e39804
commit
90cf741d31
1 changed files with 8 additions and 4 deletions
|
|
@ -1215,11 +1215,15 @@ static struct pipe_screen *radeonsi_screen_create_impl(struct radeon_winsys *ws,
|
||||||
sscreen->compute_wave_size = 64;
|
sscreen->compute_wave_size = 64;
|
||||||
|
|
||||||
if (sscreen->info.chip_class >= GFX10) {
|
if (sscreen->info.chip_class >= GFX10) {
|
||||||
/* Pixels shaders: Wave64 is recommended.
|
/* Pixel shaders: Wave64 is always fastest.
|
||||||
* Compute shaders: There are piglit failures with Wave32.
|
* Vertex shaders: Wave64 is probably better, because:
|
||||||
|
* - greater chance of L0 cache hits, because more threads are assigned
|
||||||
|
* to the same CU
|
||||||
|
* - scalar instructions are only executed once for 64 threads instead of twice
|
||||||
|
* - VGPR allocation granularity is half of Wave32, so 1 Wave64 can
|
||||||
|
* sometimes use fewer VGPRs than 2 Wave32
|
||||||
|
* - TessMark X64 with NGG culling is faster with Wave64
|
||||||
*/
|
*/
|
||||||
sscreen->ge_wave_size = 32;
|
|
||||||
|
|
||||||
if (sscreen->debug_flags & DBG(W32_GE))
|
if (sscreen->debug_flags & DBG(W32_GE))
|
||||||
sscreen->ge_wave_size = 32;
|
sscreen->ge_wave_size = 32;
|
||||||
if (sscreen->debug_flags & DBG(W32_PS))
|
if (sscreen->debug_flags & DBG(W32_PS))
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue