Closed
Bug 663450
Opened 13 years ago
Closed 13 years ago
TI: In-browser Kraken Gaussian Blur regression
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: tim_vdeynde, Unassigned)
References
()
Details
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:7.0a1) Gecko/20110610 Firefox/7.0a1
Build Identifier:
The in-browser Gaussian Blur test found at the attached URL performs way slower than JM/TM in Firefox 4, numbers are 7s vs 800ms on my machine.
This is rather surprising, as AWFY (and running the Kraken benchmark itself without the visuals for that matter) shows much better results.
Reproducible: Always
Comment 1•13 years ago
|
||
Interesting. This version of gaussian-blur uses typed arrays, which are currently disabled (bug 643842).
Comment 2•13 years ago
|
||
(In reply to comment #1)
> which are currently disabled (bug 643842).
Ehm only the ICs are diabled of course ;)
Updated•13 years ago
|
Are they actually the same benchmarks even? (looking at the source, it seems so, but I wouldn't be surprised to be wrong)
I just noticed the desaturate test runs 10 times *quicker* on http://krakenbenchmark.mozilla.org/explanations/desaturate.html than in the benchmark suite itself. If they're equal, why aren't we getting these numbers there?
Comment 4•13 years ago
|
||
(In reply to comment #3)
> Are they actually the same benchmarks even? (looking at the source, it seems
> so, but I wouldn't be surprised to be wrong)
Sorry, forgot to answer your question. Kraken initially used typed arrays, but the benchmark was changed to use normal arrays (becuase not every browser supports typed arrays). The typed array patches improved this a lot, but still a bit slower than TM:
FF 5 : 764 ms
JM+TI : 965 ms
FF 5 JM-only : 7025 ms
The loop has a number of common subexpressions such as "4 * ((y + j) * width + (x + i))" and "Math.abs(j)". This is hard to optimize in JM but IonMonkey's GVN optimization should help here. Hopefully we can also use this optimization (or Ion's LICM) for the typed array slots, so that we don't have to load the slots for every access (JM+TI's LICM is unable to optimize this loop).
Comment 5•13 years ago
|
||
Is the regression still valid?
Here ( http://arewefastyet.com/?machine=9&view=breakdown ) I see JM+TI performing better than TM+JM.
Comment 6•13 years ago
|
||
AWFY runs in the shell, not in the browser. Do you see the same behavior in-browser?
Comment 7•13 years ago
|
||
This bug is for this browser version of gaussian-blur: http://krakenbenchmark.mozilla.org/explanations/gaussian-blur.html This version uses typed arrays; the gaussian-blur in Kraken uses normal arrays.
I get about 800 ms with the latest nightly, 760 ms with FF 6. As explained in comment 4 we need Ion to beat the tracer here. 40 ms slower is a lot better than 7 seconds (comment 0), so I think we can close this.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•