Created attachment 8602263 [details] [diff] [review] patch Unboxed objects improve all our major benchmarks (octane by 2-3%) and don't regress any of the assorted tests on AWFY. They're also a good memory savings when we can use them. The attached patch turns them on by default. I'll wait to land this until after the next merge and after bug 1161762 is fixed (the only remaining unboxed object crash I think.) Since there isn't any need to control these with an about:config option I removed the unboxed objects option from RuntimeOptions and added a flag in JitOptions, as Hannes suggested in bug 1153266. I hope that eventually this file will be generalized so that it isn't JIT specific, but for now this doesn't seem too bad and the weirdness with the different control mechanism for unboxed arrays will be fixed when they are also on by default.
Fuzzing team: when this patch lands, --unboxed-objects won't be available anymore, and will be replaced by the opposite --no-unboxed-objects, still useful to test (in differential mode at least).
Got it. Thanks for the headsup!
Comment on attachment 8602263 [details] [diff] [review] patch Review of attachment 8602263 [details] [diff] [review]: ----------------------------------------------------------------- Nice!
Backed out in https://hg.mozilla.org/integration/mozilla-inbound/rev/0d05c148ef07 for apparently making hazard builds fail: https://treeherder.mozilla.org/logviewer.html#?job_id=9810759&repo=mozilla-inbound https://treeherder.mozilla.org/logviewer.html#?job_id=9811039&repo=mozilla-inbound
sorry had to back this out for test failures like https://treeherder.mozilla.org/logviewer.html#?job_id=9874995&repo=mozilla-inbound
Bouncy! Backed out in https://hg.mozilla.org/integration/mozilla-inbound/rev/df00fd242b33 for (with retriggers) 2 of 10 Linux32 opt e10s browser-chrome runs crashing like https://treeherder.mozilla.org/logviewer.html#?job_id=9908263&repo=mozilla-inbound
The regression detection was quite pleased with this landing. Overall this is an improvement on octane/kraken/ss. There are some specific tests that regressed and might be interesting to look at, but given the overall improvement, I'm not tracking the specific tests. Mac OS X 10.10 32-bit (Mac Pro, shell) - misc: typedobj-simple-struct-typedobj: 31.37% (regression) - misc: typedobj-splay-typedobj: 2.66% (regression) - misc: bugs-1131099-lodash2: 7.35% (regression) - misc: basic-hoist-bounds-check: 2.84% (regression) - octane: Box2D: -1.94% (regression) - octane: Typescript: -4.39% (regression) - dart: Richards: 17.91% (regression) More details: http://arewefastyet.com/regressions/#/regression/1578297 Mac OS X 10.10 64-bit (Mac Pro, shell) - kraken: stringify-tinderbox: 9.38% (regression) - kraken: crypto-aes: 1.58% (regression) - misc: bugs-847389-jpeg2000: 0.58% (regression) - dart: Richards: 7.01% (regression) More details: http://arewefastyet.com/regressions/#/regression/1578649
3 years ago
3 years ago