[Mesa-dev] [PATCH] glsl: use hash instead of exec_list in copy propagation

Kenneth Graunke kenneth at whitecape.org
Tue Sep 6 19:37:10 UTC 2016


On Tuesday, September 6, 2016 10:17:57 AM PDT Tapani Pälli wrote:
> This change makes copy propagation pass faster. Complete link time
> spent in test case attached to bug 94477 goes down to ~400 secs from
> over 500 secs on my HSW machine. Does not fix the actual issue but
> brings down the total. No regressions seen in CI.
> 
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
> 
> Next I'll attempt to make similar change to opt_copy_propagation_elements.
> 
>  src/compiler/glsl/opt_copy_propagation.cpp | 92 +++++++++++++-----------------
>  1 file changed, 41 insertions(+), 51 deletions(-)

A couple of drive by comments (since I see Eric already reviewed it):

- I was wondering if program/symbol_table would be useful, since we tend
  to make new tables at nested scopes...but I'm not sure if that works
  well for the kill set.  Maybe not a great fit.

- At least in the old code...the kill set could contain piles of
  duplicate entries.  kill(var) would just push a new node on the list,
  rather than seeing if var is already in the kill set.  Pretty lame :(
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160906/7c3a136a/attachment-0001.sig>


More information about the mesa-dev mailing list