diff options
author | Jason Ekstrand <[email protected]> | 2019-05-07 23:54:17 -0500 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2019-05-14 12:30:22 -0500 |
commit | e7b7d572b3bf801fa2a1a8cdff181fdf75780a96 (patch) | |
tree | bcf2a033fc0ce45bceb216c6c2a597084f42c253 /src/intel/isl/isl_gen8.c | |
parent | 0fd60e95fbfeff67651455f7897bf663572969e9 (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