<html><head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW " title="NEW - [regression] WebGL demo iamnop.com/particles is very slow and spends far too long compiling shaders" href="https://bugs.freedesktop.org/show_bug.cgi?id=97035#c8">Comment # 8</a>
on <a class="bz_bug_link
bz_status_NEW " title="NEW - [regression] WebGL demo iamnop.com/particles is very slow and spends far too long compiling shaders" href="https://bugs.freedesktop.org/show_bug.cgi?id=97035">bug 97035</a>
from <span class="vcard"><a class="email" href="mailto:eero.t.tamminen@intel.com" title="Eero Tamminen <eero.t.tamminen@intel.com>"> <span class="fn">Eero Tamminen</span></a>
</span></b>
<pre>Had some troubles at first with ezBench, but finally it bisected this.
As expected, the same commit caused 5x increase in compilation speed and even
larger drop in performance. This was the commit:
-----------------------------
commit 5886cd79a0ed10b887840f6afb980a5a6a47e26e
Author: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
AuthorDate: Wed Apr 6 22:34:39 2016 -0700
Commit: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
CommitDate: Mon Apr 11 18:43:55 2016 -0700
nir: Do basic constant reassociation.
Many shaders contain expression trees of the form:
const_1 * (value * const_2)
Reorganizing these to
(const_1 * const_2) * value
will allow constant folding to combine the constants. Sometimes, these
constants are 2 and 0.5, so we can remove a multiply altogether. Other
times, it can create more immediate constants, which can actually hurt.
Finding a good balance here is tricky. While much more could be done,
this simple patch seems to have a lot of positive benefit while having
a low downside.
-----------------------------
According to Pekka, he's seen performance drops with above commit also with
other test(s).
For the almost identical, but slightly smaller shader attached here, there was
no perf regression.
(Matt's later "Drop -fno-strict-aliasing" commit improved compilation speed
slightly.)</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>