Closed Bug 1757184 Opened 2 years ago Closed 2 years ago

26.75 - 14.99% Heap Unclassified / Heap Unclassified + 1 more (OSX, Windows) regression on Wed February 23 2022

Categories

(Core :: Web Painting, defect)

defect

Tracking

()

RESOLVED FIXED
99 Branch
Tracking Status
firefox-esr91 --- unaffected
firefox97 --- unaffected
firefox98 --- unaffected
firefox99 --- fixed

People

(Reporter: bacasandrei, Assigned: mikokm)

References

(Regression)

Details

(Keywords: perf, perf-alert, regression)

Attachments

(1 file)

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

Regressions:

Ratio Test Platform Options Absolute values (old vs new)
27% Heap Unclassified windows10-64-2004-shippable-qr tp6 74,973,544.52 -> 95,027,839.49
17% Heap Unclassified macosx1015-64-shippable-qr tp6 125,762,248.40 -> 146,615,124.31
15% Heap Unclassified macosx1015-64-shippable-qr tp6 129,622,352.97 -> 149,049,564.36

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.

Flags: needinfo?(mikokm)

Set release status flags based on info from the regressing bug 1714584

I'm seeing this in some popular sites, notably youtube. At some point I had 1GiB under heap-unclassified in its content process.

This is most likely is caused by memory allocated by the arena allocator not getting released after display lists are destroyed. This is not a memory leak, but allocations can slowly build up when the same website is active for long periods of time (because the same nsDisplayListBuilder is used).

Currently it is difficult to control when the arena should be destroyed, because nsIFrames hold pointers to nsDisplayItems, that might contain nsDisplayLists that are allocated from the arena. I have a plan to improve this, but for now I think the fastest way to fix this is to use nsPresArena instead. I will write a patch tomorrow.

Flags: needinfo?(mikokm)
Has Regression Range: --- → yes
Assignee: nobody → mikokm
Status: NEW → ASSIGNED
Pushed by mikokm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/5e1fbc34be86
Allocate display list nodes from nsPresArena instead of ArenaAllocator r=emilio
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 99 Branch

== Change summary for alert #33430 (as of Wed, 02 Mar 2022 08:49:06 GMT) ==

Improvements:

Ratio Test Platform Options Absolute values (old vs new)
21% Heap Unclassified windows10-64-2004-shippable-qr tp6 94,685,045.72 -> 74,826,471.30
13% Heap Unclassified macosx1015-64-shippable-qr tp6 147,703,945.36 -> 128,107,435.06

For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=33430

== Change summary for alert #33434 (as of Wed, 02 Mar 2022 07:50:46 GMT) ==

Improvements:

Ratio Test Platform Options Absolute values (old vs new)
3% netflix fnbpaint windows10-64-shippable-qr fission warm webrender 174.29 -> 168.29
3% netflix fnbpaint linux1804-64-shippable-qr fission warm webrender 203.06 -> 197.42

For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=33434

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: