Skip to content

intel/compiler: Clean up and reworks of URB message handling for scalar stages

Ian Romanick requested to merge idr/mesa:review/urb-rework into main

The main thing here is changing the SIMD8 URB read and write messages to be lowered to SEND messages much, much earlier in the compilation process.

Another commit also adds a couple bits of validation to the brw_eu_validate pass.

Thanks to the spilt-SEND optimization by @kwg, the intel/fs: Lower URB messages to SEND commit has some pretty shocking fossil-db results:

Tiger Lake, Ice Lake, and Sky Lake had similar results. (Ice Lake shown)
Instructions in all programs: 140729545 -> 139577251 (-0.8%)
Instructions helped: 193324

Cycles in all programs: 9073094108 -> 9071697924 (-0.0%)
Cycles helped: 36490
Cycles hurt: 149100

Spills in all programs: 98829 -> 13695 (-86.1%)
Spills helped: 2159

Fills in all programs: 128142 -> 18400 (-85.6%)
Fills helped: 2159

🤯🤯🤯 See the commit message of that patch for more details.

Merge request reports