Closed Bug 1380939 Opened 7 years ago Closed 7 years ago

2.13 - 11% kraken 1.1 stringify-tinderbox / misc 0.8 bugs-652377-jslint-on-jslint / six-speed * (linux32, linux64) regression on push 17f8bf61f6e9043623145cfcc8cde50ee3212e55 (Tue Jul 11 2017)

Categories

(Core :: JavaScript Engine: JIT, defect)

Unspecified
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: igoldan, Unassigned)

References

Details

(Keywords: perf, regression)

We have detected an awfy regression from push:

https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?changeset=17f8bf61f6e9043623145cfcc8cde50ee3212e55

As author of one of the patches included in that push, we need your help to address this regression.

Regressions:

 11%  six-speed 0.1 destructuring-simple-es6 linux32 opt shell     97.75 -> 108.50
 11%  six-speed 0.1 bindings-compound-es5 linux32 opt shell        98.25 -> 109.00
 10%  six-speed 0.1 arrow-declare-es5 linux32 opt shell            162.00 -> 178.00
 10%  six-speed 0.1 bindings-compound-es6 linux32 opt shell        108.06 -> 118.58
  9%  six-speed 0.1 bindings-es6 linux32 opt shell                 118.50 -> 129.17
  5%  six-speed 0.1 destructuring-simple-es5 linux32 opt shell     103.06 -> 108.67
  5%  six-speed 0.1 object-assign-es5 linux64 opt shell            152.83 -> 161.00
  5%  six-speed 0.1 for-of-object-es5 linux64 opt shell            54.83 -> 57.69
  4%  six-speed 0.1 bindings-es5 linux32 opt shell                 104.19 -> 108.58
  3%  kraken 1.1 stringify-tinderbox linux64 opt shell             34.12 -> 35.07
  2%  misc 0.8 bugs-652377-jslint-on-jslint linux32 opt shell      323.88 -> 330.78

Improvements:

  4%  six-speed 0.1 spread-es5 linux64 opt shell     79.72 -> 76.92
  4%  six-speed 0.1 rest-es5 linux32 opt shell       247.12 -> 238.42
  2%  six-speed 0.1 map-set-object-es6 linux64 opt shell387.96 -> 379.50


You can find links to graphs and comparison views for each of the above tests at: https://treeherder.mozilla.org/perf.html#/alerts?id=7850

On the page above you can see an alert for each affected platform as well as a link to a graph showing the history of scores for this test. There is also a link to a treeherder page showing the jobs in a pushlog format.

To learn more about the regressing test(s), please see: https://www.arewefastyet.com/
:evilpie I see you are the author of bug 1341261. Please look over this regressions. Can you estimate a fix time for them?
Flags: needinfo?(evilpies)
Component: Untriaged → JavaScript Engine: JIT
Product: Firefox → Core
All these tests are pretty sensitive to small changes, but I will try to check if we generate worse code. Probably something to  do with register allocation or unboxing the values, the rest of the code was basically copied by me.
Sorry, I won't have time to investigate this at the moment, but we could backout those changes again. Jan what do you think?
Flags: needinfo?(evilpies) → needinfo?(jdemooij)
I'll see if I can repro this, today or tomorrow.
I don't see a difference locally with and without these patches on six-speed, tested with a 32-bit build on OS X.

The graphs show these tests are bimodal, for instance the graph for the biggest regression, destructuring-simple-es6:

https://treeherder.mozilla.org/perf.html#/graphs?timerange=2592000&series=%5Bmozilla-inbound,7d6cbc1bf89cf3bbe283abd600623f49f8bf850a,1%5D&selected=%5Bmozilla-inbound,7d6cbc1bf89cf3bbe283abd600623f49f8bf850a%5D

Note how it jumps between 97 and 108 (I've no idea why). I see a similar pattern with a few other tests I checked.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(jdemooij)
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.