Closed Bug 1477260 Opened 6 years ago Closed 6 years ago

10.86 - 56.01% tsvg_static (linux64, osx-10-10, windows10-64, windows7-32) regression on push 92bd3b2178623a036ea91990aa5570e039890ff4 (Thu Jul 19 2018)

Categories

(Core :: Web Painting, defect)

defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla63
Tracking Status
firefox-esr52 --- unaffected
firefox-esr60 --- unaffected
firefox61 --- unaffected
firefox62 --- unaffected
firefox63 --- fixed

People

(Reporter: igoldan, Assigned: mikokm)

References

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?changeset=92bd3b2178623a036ea91990aa5570e039890ff4 As author of one of the patches included in that push, we need your help to address this regression. Regressions: 56% tsvg_static osx-10-10 opt e10s stylo 54.07 -> 84.35 35% tsvg_static windows7-32 opt e10s stylo 53.65 -> 72.59 31% tsvg_static linux64 pgo e10s stylo 53.74 -> 70.30 31% tsvg_static windows7-32 pgo e10s stylo 55.27 -> 72.20 29% tsvg_static linux64 opt e10s stylo 55.17 -> 71.28 12% tsvg_static windows10-64 pgo e10s stylo 47.22 -> 52.81 11% tsvg_static windows10-64 opt e10s stylo 46.96 -> 52.06 Improvements: 24% displaylist_mutate windows10-64 opt e10s stylo 2,886.08 -> 2,182.94 24% displaylist_mutate windows10-64 pgo e10s stylo 2,748.11 -> 2,087.82 23% displaylist_mutate windows7-32 opt e10s stylo 2,966.16 -> 2,273.74 23% displaylist_mutate windows7-32 pgo e10s stylo 2,788.27 -> 2,160.74 22% displaylist_mutate linux64 opt e10s stylo 3,161.59 -> 2,461.03 21% displaylist_mutate linux64 pgo e10s stylo 2,912.72 -> 2,293.37 20% displaylist_mutate osx-10-10 opt e10s stylo 6,822.11 -> 5,477.61 11% tsvgx windows10-64 opt e10s stylo 137.94 -> 123.11 11% tsvgx windows10-64 pgo e10s stylo 135.29 -> 121.05 9% tsvgr_opacity osx-10-10 opt e10s stylo 179.80 -> 163.37 9% tsvgr_opacity linux64 opt e10s stylo 122.20 -> 111.40 9% tsvgr_opacity linux64 pgo e10s stylo 117.50 -> 107.29 8% tsvgr_opacity windows7-32 pgo e10s stylo 116.27 -> 106.53 7% tsvgr_opacity windows7-32 opt e10s stylo 120.98 -> 112.43 4% tsvgx linux64 opt e10s stylo 190.61 -> 182.65 3% tsvgx windows7-32 opt e10s stylo 187.98 -> 181.56 3% tsvgx osx-10-10 opt e10s stylo 296.79 -> 286.89 3% tsvgx windows7-32 pgo e10s stylo 182.08 -> 176.03 You can find links to graphs and comparison views for each of the above tests at: https://treeherder.mozilla.org/perf.html#/alerts?id=14449 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/Buildbot/Talos/Tests For information on reproducing and debugging the regression, either on try or locally, see: https://wiki.mozilla.org/Buildbot/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/Buildbot/Talos/RegressionBugsHandling
Component: General → Layout: Web Painting
Product: Testing → Core
Flags: needinfo?(mikokm)
Thank you for the report. I have already been working on fixing this. The problem here seems to be that the transformed layer bounds get too large, and cause slow texture allocations.
Assignee: nobody → mikokm
Status: NEW → ASSIGNED
Flags: needinfo?(mikokm)
Comment on attachment 8993716 [details] Bug 1477260 - Clip the rect in Matrix4x4TypedFlagged::TransformAndClipBounds, when transform is an identity matrix https://reviewboard.mozilla.org/r/258402/#review265450 ::: gfx/2d/Matrix.h:1911 (Diff revision 1) > RectTyped<TargetUnits, F> TransformAndClipBounds(const RectTyped<SourceUnits, F>& aRect, > const RectTyped<TargetUnits, F>& aClip) const > { > if (mType == MatrixType::Identity) { > - return aRect; > + const RectTyped<SourceUnits, F>& clipped = aRect.Intersect(aClip); > + return RectTyped<TargetUnits, F>(clipped.X(), clipped.Y(), I think there's some helpers to write this more cleanly.
Attachment #8993716 - Flags: review?(bas) → review+
Pushed by mikokm@gmail.com: https://hg.mozilla.org/integration/autoland/rev/c1e307c1e6ec Clip the rect in Matrix4x4TypedFlagged::TransformAndClipBounds, when transform is an identity matrix r=bas
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
I confirm the fix completely resolved the regressions: == Change summary for alert #14478 (as of Fri, 20 Jul 2018 15:11:30 GMT) == Improvements: 41% tsvg_static osx-10-10 opt e10s stylo 85.87 -> 51.00 26% tsvg_static windows7-32 pgo e10s stylo 72.48 -> 53.33 25% tsvg_static windows7-32 opt e10s stylo 72.01 -> 53.74 24% tsvg_static linux64 pgo e10s stylo 70.29 -> 53.62 23% tsvg_static linux64 opt e10s stylo 71.01 -> 54.74 12% tsvg_static windows10-64 opt e10s stylo 52.80 -> 46.50 For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=14478
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: