mesa/src/intel
Jason Ekstrand e7b7d572b3 intel/fs/ra: Re-arrange interference setup
The old code was arranged by the type of interference being added.  It
would set up payload registers and then add payload interference for all
VGRFs.  It would set up MRFs and add MRF interference for all VGRFs.
This commit re-arranges things to be organized differently.  It first
creates and sets up all RA nodes and then groups interference into two
new categories:  live range and instruction interference.  Once all the
RA nodes have been set up, it walks the list of VGRFs and sets up their
live range interference and then walks the list of instructions and sets
up instruction interference.  This new arrangement will be advantageous
for a future patch but, at the moment, it cuts 2% off the run-time of
shader-db on my laptop.

Shader-db results on Kaby Lake:

    total instructions in shared programs: 15311224 -> 15311224 (0.00%)
    instructions in affected programs: 0 -> 0
    helped: 0
    HURT: 0

    total cycles in shared programs: 355544739 -> 355544739 (0.00%)
    cycles in affected programs: 0 -> 0
    helped: 0
    HURT: 0

    Total CPU time (seconds): 2523.45 -> 2469.68 (-2.13%)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2019-05-14 12:30:22 -05:00
..
blorp intel/blorp: Make blorp update the clear color in gen11. 2019-04-29 21:19:59 +00:00
common intel/mi_builder: Disable mem_mem tests on IVB 2019-04-16 12:59:12 -05:00
compiler intel/fs/ra: Re-arrange interference setup 2019-05-14 12:30:22 -05:00
dev intel: drop misleading driver name from gen_get_device_info() 2019-05-11 04:14:06 +00:00
genxml intel/genxml: Update MI_ATOMIC genxml definition. 2019-04-29 21:19:59 +00:00
isl isl: Add restrictions to isl_surf_get_hiz_surf() 2019-05-14 16:23:12 +00:00
perf i965: fix icelake performance query enabling 2019-04-25 01:11:54 +00:00
tools intel/tools: Fix build with glibc < 2.27. 2019-05-13 11:05:48 -07:00
vulkan anv: Implement VK_KHR_uniform_buffer_standard_layout 2019-05-13 17:20:33 -05:00
Android.blorp.mk intel: android: remove libdrm_intel requirement 2017-03-30 19:07:23 +01:00
Android.common.mk android: static link with libexpat with Android O+ 2019-03-25 10:11:57 +02:00
Android.compiler.mk android: fix build issues with brw_nir_trig_workarounds.c 2017-10-04 07:39:05 +03:00
Android.dev.mk drm-uapi: use local files, not system libdrm 2019-02-14 11:20:00 +00:00
Android.genxml.mk intel/genxml/icl: Generate packing headers 2018-02-15 16:14:55 -08:00
Android.isl.mk android: intel/isl: remove redundant building rules 2019-02-22 07:56:11 +02:00
Android.mk i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Android.perf.mk i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Android.vulkan.mk android: static link with libexpat with Android O+ 2019-03-25 10:11:57 +02:00
Makefile.perf.am i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Makefile.sources intel/compiler: add a NIR pass to lower conversions 2019-04-18 11:05:18 +02:00
meson.build i965: extract performance query metrics 2019-04-17 14:10:42 +01:00