Closed Bug 1667535 Opened 4 years ago Closed 3 years ago

heap unclassified in parent process accumulates quickly with WebRender enabled

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: tnikkel, Unassigned)

References

Details

If I run beta then I get significant heap unclassified with or without webrender. However whenever webrender is turned on the heap-unclassified grows MUCH faster. It happens after a day or two.

Latest macbook pro, external screen attached. My only addons are ublock origin and open selected links ( https://addons.mozilla.org/en-CA/firefox/addon/open-selected-links/ ) I try to keep pref changes to a minimum. One unusual thing is that I run multiple profiles so the Firefox installation gets updated by another process while it's still running.

Blocks: wr-memory, wr-mac
Severity: -- → S3
No longer blocks: wr-mac
See Also: → 1655176

Timothy, did you check with DMD? You can even do that with Nightly. I wonder if that could be related to or a dupe of bug 1625590.

Flags: needinfo?(tnikkel)

(In reply to Henrik Skupin (:whimboo) [⌚️UTC+2] from comment #1)

Timothy, did you check with DMD? You can even do that with Nightly.

I've tried to investigate large heap unclassified in my main profile on beta with DMD before but never had success (beta doesn't seem to build with DMD enabled, I've even tried making a copy of my main profile to use for testing purposes).

I wonder if that could be related to or a dupe of bug 1625590.

Maybe. I filed this because I see a very definite increase in heap-unclassified that is much larger and faster then without webrender.

Flags: needinfo?(tnikkel)

Hard to say for me if it grows faster with webrender, but I usually have around 70% heap unclassified. Right now:

2,315.28 MB (100.0%) -- explicit
├──1,503.46 MB (64.94%) ── heap-unclassified

And yes for DMD you need Nightly. I basically see the huge heap unclassified usage with every profile whereby beta has a lower overall memory usage. I will try to turn off webrender the next days to try to observe a possible difference myself.

See Also: → 1625590

How does it look like for you these days? Since bug 1669286 has been fixed weak fonts should be separately reported now with webrender enabled. See also bug 1625590 comment 49. Maybe if you run Nightly with your work profile you could start it with DMD enabled to be able to provide your stats for heap unclassified?

Flags: needinfo?(tnikkel)

Things are still the same for me. Bug 1669286 isn't on beta yet so I can't test. The problem with running my main profile on nightly is that once I go nightly I can't go back, firefox will complain about downgrading. I'm patiently waiting for bug 1669286 to get to beta and then I'll provide an update here.

Flags: needinfo?(tnikkel)

Note that you can use/export MOZ_ALLOW_DOWNGRADE=1 to not be bothered with this warning. But yes, if you don't want to use your profile with Nightly then it will still not be an option.

The fix from bug 1669286 is on beta now. How does it look like for you now Timothy?

Flags: needinfo?(tnikkel)

Thanks for the reminder. I just updated. I'll report back in a few days.

I still just high amounts of heap unclassified, I'm not sure but it seems like it might b accumulating a little slower though. Nothing about fonts in my about:memory is in any way large. I see that there are further font fixes coming to nightly, so I will await those.

Flags: needinfo?(tnikkel)

After I updated beta fonts started showing up taking about 300mb, steady, not growing (I believe the font memory reporting patch got uplifted since the previous beta that I was using), and heap-unclassified seemed better too. Still too high, but not growing very fast and about 1 GB.

Timothy, I assume you mean native-font-resource-mac?

Flags: needinfo?(tnikkel)

Yes, that is the name. I updated beta again and now it's taking 600mb.

Flags: needinfo?(tnikkel)

(In reply to Timothy Nikkel (:tnikkel) from comment #12)

Yes, that is the name. I updated beta again and now it's taking 600mb.

Ok, so that part is clearly bug 1625590.

How much percentage does heap-unclassfied make use of?

600mb or 34%. It's not that big currently because I haven't been running this build for very long yet, I expect it to get bigger.

Ok, so merge day is today. It would be good not know how it works for you with a 85 nightly starting later today. Please let us know.

Still using the same build from comment 14 (https://hg.mozilla.org/releases/mozilla-release/rev/55359edc5d1cb8addecf9d2e7151782da543f67b) my heap unclassified and native-font-resource-mac are both 1GB now. Whenever a fresh beta comes out I'll probably update to that, that should have some new fixes.

It's around for some days. And right now you seem to even use a release build. Here the 84 beta 2:
https://archive.mozilla.org/pub/firefox/releases/84.0b2/mac/en-US/

Jeff informed me. For some reason it would not find an update when I checked, so I manually downloaded the latest beta.

My native-fonts-mac went up to 300mb at one point when the emoji font was included, but then it went back down to very small and the emoji font is no longer there. Heap unclassified is 500mb (50%). We'll see how it grows over the next few days.

Latest Nightly fixed the problem with the native fonts for me. The heap-unclassified stays pretty low at around 20% (~150MB) for me all day long.

Fonts has stayed small but heap unclassified has continued to creep up, now at 750mb and 60%.

Fonts still small, heap unclassified still growing at 1.1GB and 66%

Timothy, I strongly believe that making progress here would mean that you maybe duplicate your profile (and disconnect from Firefox accounts if enabled), and actually run a Nigthly with DMD enabled. Right now I cannot detect any unusual high heap-unclassified usage.

I'm confident now that the behaviour with webrender is about the same as without. I'll run my profile with nightly at some point in the future so I can use dmd and figure out what the remaining problems are.

Timothy, shall we close the bug as WFM for now?

Sure. The high heap-unclassified is still around (that will probably be fixed when nightly merges to beta soon, if not I can file a new bug), the regression when going to webrender is fixed.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WORKSFORME
Summary: heap unclassified in parent process accumulates quickly → heap unclassified in parent process accumulates quickly with WebRender enabled
You need to log in before you can comment on or make changes to this bug.