[Mesa-dev] [PATCH 3/3] i965/fs: Try a different pre-scheduling heuristic if the first spills.

Eric Anholt eric at anholt.net
Wed Nov 6 23:43:42 PST 2013


Eric Anholt <eric at anholt.net> writes:

> Since LIFO fails on some shaders in one particular way, and non-LIFO
> systematically fails in another way on different kinds of shaders, try
> them both. and pick whichever one successfully register allocates first.
> Slightly prefer non-LIFO in case we produce extra dependencies in register
> allocation, since it should start out with fewer stalls than LIFO.
>
> This is madness, but I haven't come up with another way to get unigine
> tropics to not spill while keeping other programs from not spilling and
> retaining the non-unigine performance wins from texture-grf.
>
> total instructions in shared programs: 1626728 -> 1626288 (-0.03%)
> instructions in affected programs:     1015 -> 575 (-43.35%)
> GAINED:                                50
> LOST:                                  0

Added to the commit message:

Improves Unigine Tropics performance by 14.5257% +/- 0.241838% (n=38)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70445

Fixing register allocation after texture-grf was the thing I wanted to
fix before release, and I think I'm finally there.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20131106/a3e4174e/attachment.pgp>


More information about the mesa-dev mailing list