Closed Bug 1663901 Opened 4 years ago Closed 4 years ago

11.81 - 7609.28% tp5n ts_paint / ts_paint_webext (linux64-shippable, linux64-shippable-qr, windows10-64-shippable, windows10-64-shippable-qr, windows7-32-shippable) regression on push ca131344e7fcf46f50e09bea63141d2578f18b7b (Mon September 7 2020)

Categories

(Core :: Layout: Text and Fonts, defect)

Firefox 82
defect

Tracking

()

RESOLVED WONTFIX
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- unaffected
firefox80 --- unaffected
firefox81 --- unaffected
firefox82 --- affected

People

(Reporter: Bebe, Unassigned)

References

(Regression)

Details

(4 keywords)

Perfherder has detected a talos performance regression from push ca131344e7fcf46f50e09bea63141d2578f18b7b. As author of one of the patches included in that push, we need your help to address this regression.

Regressions:

7609% tp5n main_normal_fileio windows7-32-shippable opt e10s stylo 3,714,888.67 -> 286,391,166.67
340% tp5n main_normal_fileio windows10-64-shippable opt e10s stylo 5,616,489.42 -> 24,717,312.42
250% tp5n main_normal_fileio windows10-64-shippable-qr opt e10s stylo 6,982,060.58 -> 24,404,791.42
17% ts_paint linux64-shippable opt e10s stylo 188.75 -> 219.92
16% ts_paint_webext linux64-shippable opt e10s stylo 189.83 -> 219.50
14% ts_paint linux64-shippable-qr opt e10s stylo 219.88 -> 250.17
12% ts_paint_webext linux64-shippable-qr opt e10s stylo 230.67 -> 257.92

Improvements:

5% startup_about_home_paint linux64-shippable opt e10s stylo 717.17 -> 684.25
4% startup_about_home_paint_realworld_webextensions linux64-shippable opt e10s stylo 740.25 -> 708.67
4% startup_about_home_paint_realworld_webextensions linux64-shippable-qr opt e10s stylo 974.67 -> 935.50

Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests. Please follow our guide to handling regression bugs and let us know your plans within 3 business days, or the offending patch(es) will be backed out in accordance with our regression policy.

For more information on performance sheriffing please see our FAQ.

Component: Performance → Layout: Text and Fonts
Flags: needinfo?(jfkthame)
Product: Testing → Core

It's expected that bug 1533462 will cause a lot of changes, some positive and some negative; I suspect there will be quite a few more alerts to consider over the coming day or two, before we have the full picture. (Compare for example https://bugzilla.mozilla.org/show_bug.cgi?id=1533462#c15, from when this pref was previously enabled.)

We should wait for a more complete view of the impact of the change, before making decisions here. Leaving needinfo flag for the time being...

taking this out of the triage queue. S2 seems appropriate but feel free to change as needed.

Severity: -- → S2

We also have a regression on raptor tests:

== Change summary for alert #26944 (as of Wed, 16 Sep 2020 04:08:01 GMT) ==

Regressions:

23% raptor-tp6-yahoo-news-firefox-cold loadtime windows7-32-shippable opt 1,479.56 -> 1,814.83
19% raptor-tp6-wikipedia-firefox-cold fcp linux64-shippable-qr opt webrender 1,910.58 -> 2,268.67
19% raptor-tp6-outlook-firefox-cold fcp windows7-32-shippable opt 231.83 -> 275.08
19% raptor-tp6-outlook-firefox-cold fcp windows10-64-shippable opt 232.50 -> 275.67
18% raptor-tp6-wikipedia-firefox-cold linux64-shippable-qr opt webrender 1,929.43 -> 2,284.38
17% raptor-tp6-wikipedia-firefox-cold fcp linux64-shippable opt 1,782.00 -> 2,089.08
17% raptor-tp6-wikipedia-firefox-cold loadtime windows7-32-shippable opt 1,809.33 -> 2,117.83
17% raptor-tp6-wikipedia-firefox-cold loadtime windows10-64-shippable opt 1,781.75 -> 2,079.33
16% raptor-tp6-wikipedia-firefox-cold linux64-shippable opt 1,868.80 -> 2,171.74
16% raptor-tp6-outlook-firefox-cold fcp windows10-64-shippable-qr opt webrender 232.17 -> 269.50
15% raptor-tp6-wikipedia-firefox-cold loadtime linux64-shippable-qr opt webrender 2,109.00 -> 2,435.67
15% raptor-tp6-wikipedia-firefox-cold loadtime windows10-64-shippable-qr opt webrender 1,806.67 -> 2,077.83
15% raptor-tp6-outlook-firefox-cold windows7-32-shippable opt 334.36 -> 383.80
15% raptor-tp6-wikipedia-firefox-cold loadtime linux64-shippable opt 2,064.42 -> 2,367.67
14% raptor-tp6-wikipedia-firefox-cold loadtime linux64-shippable opt 2,070.83 -> 2,364.33
14% raptor-tp6-outlook-firefox-cold windows10-64-shippable opt 335.90 -> 383.23
14% raptor-tp6-outlook-firefox-cold windows10-64-shippable-qr opt webrender 336.34 -> 383.02
13% raptor-tp6-pinterest-firefox-cold fcp macosx1014-64-shippable opt 1,112.31 -> 1,251.33
11% raptor-tp6-wikipedia-firefox-cold windows7-32-shippable opt 1,602.44 -> 1,772.59
7% raptor-tp6-pinterest-firefox-cold macosx1014-64-shippable opt 1,665.76 -> 1,790.10
7% raptor-tp6-wikipedia-firefox-cold windows10-64-shippable-qr opt webrender 1,653.52 -> 1,767.78
6% raptor-tp6-pinterest-firefox-cold fcp windows10-64-shippable-qr opt webrender 715.07 -> 759.75
6% raptor-tp6-wikipedia-firefox-cold windows10-64-shippable opt 1,586.51 -> 1,684.79
6% raptor-tp6-yahoo-news-firefox-cold windows7-32-shippable opt 1,223.12 -> 1,292.13
5% raptor-tp6-reddit-firefox-cold fcp linux64-shippable opt 275.06 -> 287.75
4% raptor-tp6-instagram-firefox-cold loadtime linux64-shippable-qr opt webrender 1,079.83 -> 1,123.92
4% raptor-tp6-pinterest-firefox-cold windows10-64-shippable-qr opt webrender 1,068.64 -> 1,108.29

Improvements:

24% raptor-tp6-twitch-firefox-cold fcp linux64-shippable-qr opt webrender 114.67 -> 87.67
5% raptor-tp6-pinterest-firefox-cold fcp linux64-shippable-qr opt webrender 744.62 -> 705.33

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=26944

For more improvements associated with the same change, see also bug 1533462 comment 39 and bug 1533462 comment 40.

Regarding the really big "regressions" here:

7609% tp5n main_normal_fileio windows7-32-shippable opt e10s stylo 3,714,888.67 -> 286,391,166.67
340% tp5n main_normal_fileio windows10-64-shippable opt e10s stylo 5,616,489.42 -> 24,717,312.42
250% tp5n main_normal_fileio windows10-64-shippable-qr opt e10s stylo 6,982,060.58 -> 24,404,791.42

I believe these tests are only showing part of the overall picture. The fileio here will be primarily access to large font files in order to load metadata and character maps, needed in order to support CSS font-family selection and fallback. This file access will have been happening prior to the change, but it didn't show up here because it was done by content processes.

Since the change, it's done by the main process, which could be seen as a negative, as it has the potential to jank the main process because of the extra work/io it has to do -- but on the other hand, it previously could have janked the content process while it is trying to reflow the user's page, and it previously had to be done separately by each content process when it needed to search the fonts. Now it only happens once, and all content processes for the life of the browser session get to use the data "for free". So the total work (and file i/o, and memory footprint) we're doing will actually be reduced for anything more than a trivial session that launches the browser, views a page, and then quits.

Overall, therefore, I think this is an improvement; it appears as a regression on these particular tests because of where the work happens, but in terms of the browser session as a whole, it's better for us to do this work once, here, than do it over and over again in each process.

Based on jkews comments, sounds like this is an acceptable regression.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WONTFIX
Has Regression Range: --- → yes
Flags: needinfo?(jfkthame)
You need to log in before you can comment on or make changes to this bug.