Closed Bug 1366340 Opened 4 years ago Closed 3 years ago

Investigate deleting merged compartments immediately

Categories

(Core :: JavaScript: GC, enhancement)

55 Branch
enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla56
Tracking Status
firefox56 --- fixed

People

(Reporter: jonco, Assigned: jonco)

References

Details

Attachments

(1 file)

When we parse a script off main thread we create a new ZoneGroup, Zone and JSComparment for the parse to happen in.  When it finishes all the GC things in the new compartment are merged back into the main heap.  The group, zone and compartment data structures are no longer required but are not cleaned up until the next GC.  Since we may build up a lot of these if we're parsing lots of scripts it may be better to just delete them immediately we're finished with them.
It's worse than I said above - we won't collect these until the next *full* GC, and we're trying to do fewer of those.  Since we iterate over all zones in a whole lot of places it would be better to clean these up ASAP.
Assignee: nobody → jcoppeard
Attachment #8888856 - Flags: review?(sphink)
Attachment #8888856 - Flags: review?(sphink) → review+
Pushed by jcoppeard@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/451efff6cf90
Delete parsing zones immediately after their contents are merged r=sfink
https://hg.mozilla.org/mozilla-central/rev/451efff6cf90
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla56
You need to log in before you can comment on or make changes to this bug.