intel/brw/xe3+: Disable round-robin allocation heuristic on Xe3+.

Xe3+ benefits from packing register allocations tightly in order to
make optimal use of the GRF space.  The round-robin heuristic
previously in use often causes the whole GRF space to be used even if
register pressure is substantially lower, which would severely
decrease thread-level parallelism on Xe3+.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32664>
This commit is contained in:
Francisco Jerez 2024-09-18 14:26:45 -07:00 committed by Marge Bot
parent a67ff3e7e3
commit d03eac3133

View file

@ -106,7 +106,8 @@ brw_fs_alloc_reg_sets(struct brw_compiler *compiler)
class_sizes[i] = i + 1;
struct ra_regs *regs = ra_alloc_reg_set(compiler, base_reg_count, false);
ra_set_allocate_round_robin(regs);
if (devinfo->ver < 30)
ra_set_allocate_round_robin(regs);
struct ra_class **classes = ralloc_array(compiler, struct ra_class *,
REG_CLASS_COUNT);