summaryrefslogtreecommitdiffstats
path: root/src/intel/isl/isl_gen8.c
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2019-05-07 23:54:17 -0500
committerJason Ekstrand <[email protected]>2019-05-14 12:30:22 -0500
commite7b7d572b3bf801fa2a1a8cdff181fdf75780a96 (patch)
treebcf2a033fc0ce45bceb216c6c2a597084f42c253 /src/intel/isl/isl_gen8.c
parent0fd60e95fbfeff67651455f7897bf663572969e9 (diff)
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 <[email protected]>
Diffstat (limited to 'src/intel/isl/isl_gen8.c')
0 files changed, 0 insertions, 0 deletions