diff options
author | Rob Clark <[email protected]> | 2019-05-30 10:44:16 -0700 |
---|---|---|
committer | Rob Clark <[email protected]> | 2019-06-03 12:44:03 -0700 |
commit | 771d04c82d007dae289b5429b4549f006140993d (patch) | |
tree | 3efacde4c7042b84a5149fad2b4ec7106f00c67b /VERSION | |
parent | bb3aa44ade078278c3ad021736c1cd2e8d6ff5da (diff) |
freedreno/ir3: scheduler improvements
For instructions that increase the # of live values, apply a threshold
to avoid scheduling them too early. And factor the net change of # of
live values that would result from scheduling an instruction, to
prioritize instructions that reduce number of live values as the number
of live values increases.
For manhattan:
total instructions in shared programs: 27869 -> 28413 (1.95%)
instructions in affected programs: 26756 -> 27300 (2.03%)
helped: 102
HURT: 87
total full in shared programs: 1903 -> 1719 (-9.67%)
full in affected programs: 1390 -> 1206 (-13.24%)
helped: 124
HURT: 9
The reduction in register usage nets ~20% gain in manhattan. (So
getting mediump support should be a huge win for gles gfxbench.)
Also significantly helps some of the more complex shadertoy shaders,
like IQ's Piano (32 to 18 regs, doubles fps).
The effect is less pronounced on smaller shaders.
Signed-off-by: Rob Clark <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'VERSION')
0 files changed, 0 insertions, 0 deletions