Platform/Features/Incremental GC/TestPlan

From MozillaWiki
Jump to navigation Jump to search

Incremental Garbage Collection

Feature Status Release Target Dev Lead QA Lead QA Status
Incremental GC Landed Firefox 16 Bill McCloskey Ioana Budnar Signed off on Aurora

Summary

  • Garbage collection time is divided into short increments. Overall, the same amount of time is spent doing garbage collection, but each individual pause is shorter.

References

Use Cases

  • Use Firefox with incremental garbage collection enabled:
    • Dynamic content on the web should have more tolerable pauses (possibly go from noticeable pauses to ones the user cannot notice).
    • Most GCs, if not all, should be incremental.
    • Incremental GC parameters should have acceptable values (slices with Marks <=20ms, Max Pauses <=16ms, or at least shorter than the total for Mark).
  • Disable incremental garbage collection.

Test Cases

  • The test cases for this feature can be viewed here.

Important Bugs

Full Query
ID Summary Priority Status
728686 JS_NewPropertyIterator disables IGC -- VERIFIED
728692 Javascript becomes slow after Incremental GC gets disabled -- RESOLVED
728976 Debug-only incremental GC crash [@ js::ReentrancyGuard::ReentrancyGuard] -- RESOLVED
729773 [IncrementalGC] "Assertion failure: IsMarkedOrAllocated(static_cast<Cell *>(thing))" with adoptNode, gczeal(4) -- RESOLVED
730853 If incremental GC or compartment GC runs all the time, CC never runs -- VERIFIED
734946 Disable incremental GC for Firefox 13 -- VERIFIED
735099 Re-enable incremental GC on desktop platforms -- RESOLVED
735944 about:support says "incremental gc: 1" when javascript.options.mem.gc_incremental is disabled -- VERIFIED
752098 Crashes on MemBench with incremental GC enabled -- RESOLVED
759522 OOM during mochitest-other -- RESOLVED
761739 incremental GCs are very rare -- RESOLVED
768688 Disable incremental GC for Firefox 15; re-enable compartment GCs -- RESOLVED

12 Total; 0 Open (0%); 8 Resolved (66.67%); 4 Verified (33.33%);


Not Tested

  • Cycle collector.

Sign off

Criteria
  • All the test cases were executed.
  • All the major bugs have been fixed.
Sign offs
  • Firefox 13.0 Aurora - 2012-03-19
  • Firefox 15.0 Aurora - 2012-06-08
    • bugs 761739, 728692, 728976, 729773, 759522 still not fixed.
  • Firefox 16.0 Aurora - 2012-07-20
    • 30%-40% of the IGCs have long slices, but they all have acceptable Mark values (<20ms).
    • 10%-20% of the IGCs have Max Pause longer than the total for Mark.