The following 5 patches contain a few register allocation cleanups and performance improvements. Chris Wilson noticed that setting up register sets on i965 calls reralloc an absurd number of times. I did a little hacking and found out that the initial size for the collision lists is way too low. This series also contains a patch to avoid setting up registers more times than needed on platforms where RA is the same for SIMD8 vs SIMD16.
The whole series seems to cut about 4 minutes off a piglit run on BYT. It usually takes around 31 minutes and this time it ran in 27. Jason Ekstrand (5): ra: Refactor ra_set_finalize ra: Delete the conflict lists in ra_set_finalize ra: Allocate bigger initial conflict lists i965/fs: Use dispatch_width instead of reg_width in alloc_reg_sets i965/fs: Don't do redundant RA setup on IVB+ src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp | 25 ++++++---- src/util/register_allocate.c | 58 ++++++++++++----------- 2 files changed, 48 insertions(+), 35 deletions(-) -- 2.4.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev