Skip to content

agx: Hoist sample_mask/zs_emit

Alyssa Rosenzweig requested to merge alyssa/mesa:agx/hoist-sample-mask into main

What does this MR do and why?

agx: Hoist sample_mask/zs_emit

Although this is well-motivated, perf effect seems to be neglible for Dolphin. It does prevent the scheduler from making things worse by sinking these instructions though, so as a way to prevent future problems this seems sensible.

The kind of problem this affects (late discard) isn't modelled in shader-db. Nevertheless, nothing concerning there:

   total instructions in shared programs: 1756699 -> 1756722 (<.01%)
   instructions in affected programs: 10106 -> 10129 (0.23%)
   helped: 21
   HURT: 41
   Inconclusive result (value mean confidence interval includes 0).

   total bytes in shared programs: 11525404 -> 11525452 (<.01%)
   bytes in affected programs: 72900 -> 72948 (0.07%)
   helped: 27
   HURT: 41
   Inconclusive result (value mean confidence interval includes 0).

   total halfregs in shared programs: 483394 -> 483286 (-0.02%)
   halfregs in affected programs: 4945 -> 4837 (-2.18%)
   helped: 88
   HURT: 78
   Inconclusive result (value mean confidence interval includes 0).

Signed-off-by: Alyssa Rosenzweig alyssa@rosenzweig.io

Edited by Alyssa Rosenzweig

Merge request reports