[Mesa-dev] [PATCH v2 3/4] ra: consider all spillable nodes for spilling
Kenneth Graunke
kenneth at whitecape.org
Fri Aug 1 19:23:35 PDT 2014
On Wednesday, July 30, 2014 10:50:59 PM Eric Anholt wrote:
> Connor Abbott <cwabbott0 at gmail.com> writes:
>
> > Before, we would only consider nodes for spilling if they were
> > optimistically pushed onto the stack. But the logic for this was
> > complicated, and duplicated some things; also, we might want to spill
> > nodes that are not optimistically colored if our heuristic says we
> > should. This becomes a problem especially after the next commit, where
> > duplicating the current behavior of only spilling optimistically colored
> > nodes can sometimes leave the backend in a position where it has no
> > registers to spill. So just drop the original logic, and consider
> > everything that has its spill cost set for spilling.
> >
> > HURT: shaders/steam/dungeon-defenders/5008.shader_test SIMD8: 434 -> 439 (1.15%)
> >
> > total instructions in shared programs: 4547617 -> 4547622 (0.00%)
> > instructions in affected programs: 434 -> 439 (1.15%)
> > GAINED: 0
> > LOST: 0
>
> Interesting. Is this our only shader that's spilling in the db?
> (though, also, something spilling that's only 434 instructions long? I
> don't think I've ever seen that. Wow.).
It's doing 32 texture lookups, and appears to keep at least some of those values alive for quite a while. We could likely do better, but I could definitely see this triggering spilling.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140801/321ae16b/attachment.sig>
More information about the mesa-dev
mailing list