Re:Firefox 54: E10S-Multi, WebExtension APIs, CSS Clip-Path
by kibwen on Tuesday June 13, 2017 @06:35PM
(#14549254)
What particular change is responsible for the performance improvement seen in that benchmark? Not anything related to Quantum/Servo surely; I expect those benchmarks to reflect Javascript performance exclusively, and I haven't heard anything in a long time from Mozilla regarding Spidermonkey improvements.
[ Parent
| on HN ]
Re:Firefox 54: E10S-Multi, WebExtension APIs, CSS Clip-Path
by bzbarsky on Tuesday June 13, 2017 @10:56PM
(#14550392)
There's been a steady march of performance improvements in Spidermonkey, though they haven't gotten very much press. They've been rearchitecting most of the inline caches so there's more sharing between the baseline and optimizing compiler and less in the way of performance cliffs. See https://bugzilla.mozilla.org/show_bug.cgi?id=1259927 and its dependencies (https://bugzilla.mozilla.org/showdependencytree.cgi?id=12599... for the dependency view). Things like https://bugzilla.mozilla.org/show_bug.cgi?id=1328140 led to significant improvements to the sort of megamorphic code you commonly see in frameworks (e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=1328140#c14 shows 25% improvements on Ember benchmarks).
This work has been ongoing; a bunch of it landed in 53, more in 54, and more has been landing since. What makes it a bit harder to advertise is that it's aiming at reducing performance cliffs and improving the chance that real-life code lands on fast paths, not on improving the performance of those already-fast paths. WebAssembly is where the "make the fast bits faster" action is, mostly.
Re:Firefox 54: E10S-Multi, WebExtension APIs, CSS Clip-Path
by callahad on Tuesday June 13, 2017 @06:58PM
(#14549383)
The change in that benchmark was from https://bugzilla.mozilla.org/show_bug.cgi?id=1369140, as part of the Quantum Flow (https://wiki.mozilla.org/Quantum/Flow) effort.