Closed Bug 1554848 Opened 4 months ago Closed 4 months ago

2.2% ts_paint_webext (windows7-32-shippable) regression on push ad38bcbe7879cf715df2a49840b62d1235689882

Categories

(Firefox :: General, defect, P1)

Desktop
Windows
defect

Tracking

()

VERIFIED FIXED
Firefox 69
Tracking Status
firefox-esr60 --- unaffected
firefox67 --- unaffected
firefox67.0.1 --- unaffected
firefox68 --- unaffected
firefox69 --- fixed

People

(Reporter: igoldan, Assigned: bdahl)

References

(Depends on 1 open bug, Blocks 1 open bug, Regression)

Details

(Keywords: perf, regression, talos-regression)

Attachments

(1 file)

Talos has detected a Firefox performance regression from push:

https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=5a721a7648f2db40785729ed8fc7c7444c1afcaf&tochange=ad38bcbe7879cf715df2a49840b62d1235689882

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

Regressions:

2% ts_paint_webext windows7-32-shippable opt e10s stylo 326.42 -> 333.59

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

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 Talos jobs in a pushlog format.

To learn more about the regressing test(s), please see: https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests

For information on reproducing and debugging the regression, either on try or locally, see: https://wiki.mozilla.org/Performance_sheriffing/Talos/Running

*** Please let us know your plans within 3 business days, or the offending patch(es) will be backed out! ***

Our wiki page outlines the common responses and expectations: https://wiki.mozilla.org/Performance_sheriffing/Talos/RegressionBugsHandling

Product: Testing → Firefox
Hardware: x86 → Unspecified
Flags: needinfo?(bgrinstead)

Were other platforms affected as well, or is this only win7-32?

Flags: needinfo?(bgrinstead) → needinfo?(igoldan)

What's the difference between ts_paint_webext and ts_paint? I don't see it listed in https://wiki.mozilla.org/Buildbot/Talos/Tests#ts_paint.

(In reply to Brian Grinstead [:bgrins] from comment #1)

Were other platforms affected as well, or is this only win7-32?

Only Windows platforms got affected. This includes Windows 10.

Flags: needinfo?(igoldan)
OS: Windows 7 → Windows
Hardware: Unspecified → Desktop

(In reply to Brian Grinstead [:bgrins] from comment #2)

What's the difference between ts_paint_webext and ts_paint? I don't see it listed in https://wiki.mozilla.org/Buildbot/Talos/Tests#ts_paint.

:kmag can answer that.

Flags: needinfo?(kmaglione+bmo)

(In reply to Brian Grinstead [:bgrins] from comment #2)

What's the difference between ts_paint_webext and ts_paint? I don't see it listed in https://wiki.mozilla.org/Buildbot/Talos/Tests#ts_paint.

ts_paint_webext has an extra extension installed that's meant to test overhead from the extension framework.

Flags: needinfo?(kmaglione+bmo)

It's not clear to me what in particular about browser.xhtml + the extension framework would trigger that's slower. The document load should be the same (using prototype cache), and ts_paint itself is fine. Maybe the extension framework is special casing XULDocument somehow, though I'm not seeing anything obvious at https://searchfox.org/mozilla-central/search?q=xul&path=toolkit%2Fcomponents%2Fextensions.

Brendan, do you have any ideas on the next step for debugging this? I can do some try pushes to gather profiles with and without the change but not sure where to go besides that.

Flags: needinfo?(bdahl)

If I had to guess, I'd say the most likely candidates for being affected by browser.xhtml would be the browser action and page action code. I'm not sure exactly why it would make a difference, though.

The sheriffs should be able to get you before and after profiles.

Pushes that should get profiles (gathered via ./mach try fuzzy -q 'win talos-g5' --gecko-profile --no-artifact):

(In reply to Brian Grinstead [:bgrins] from comment #9)

Pushes that should get profiles (gathered via ./mach try fuzzy -q 'win talos-g5' --gecko-profile --no-artifact):

Hm, looks like these didn't work. Ionuț, could you help get profiles before/after the regression (and let me know how you do it so I can do it next time)?

Flags: needinfo?(igoldan)
Priority: -- → P1

(In reply to Brian Grinstead [:bgrins] from comment #7)

Brendan, do you have any ideas on the next step for debugging this? I can do some try pushes to gather profiles with and without the change but not sure where to go besides that.

I tried to run the profiles, but I get permafails on Windows.

Flags: needinfo?(igoldan)
Depends on: 1555598

Some of the talos test timers seem to be affected when DOMContentLoaded
is not dispatched synchronously. This will also help when we load all XUL
as XHTML (bug 1550801), since certain tests rely on sync dispatch.

Pushed by bdahl@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1a68a4a5a5b7
Use sync DOMContentLoaded when using prototype cache. r=bzbarsky
Flags: needinfo?(bdahl)
Status: NEW → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 69
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.