Platform/Features/Incremental GC
Status
Incremental garbage collection | |
Stage | Landed |
Status | In progress |
Release target | Firefox 15 |
Health | OK |
Status note | K9O requirement to enable on Desktop and Mobile |
Team
Product manager | Asa Dotzler |
Directly Responsible Individual | David Mandelin |
Lead engineer | ` |
Security lead | ` |
Privacy lead | ` |
Localization lead | ` |
Accessibility lead | ` |
QA lead | Ioana Budnar |
UX lead | ` |
Product marketing lead | ` |
Operations lead | ` |
Additional members | ` |
Open issues/risks
Re-enable incremental GC on desktop platforms https://bugzilla.mozilla.org/show_bug.cgi?id=735099 Re-enable incremental GC on Android https://bugzilla.mozilla.org/show_bug.cgi?id=750959
Stage 1: Definition
1. Feature overview
We would like to be able to divide GC time into short increments. Overall, we would still spend the same amount of time doing GC, but each individual pause would be shorter. Doing this for the sweep phase is mostly a matter of scheduling. For the mark phase, we need a write barrier and we need an explicit mark stack.
See bug 641025 for more detail.
2. Users & use cases
With shorter GC pause times, games and other dynamic content on the web will have more tolerable pauses, and in some cases will go from having pauses that users notice to not having pauses that users notice.
3. Dependencies
`
4. Requirements
`
Non-goals
`
Stage 2: Design
5. Functional specification
`
6. User experience design
`
Stage 3: Planning
7. Implementation plan
`
8. Reviews
Security review
`
Privacy review
`
Localization review
`
Accessibility
`
Quality Assurance review
`
Operations review
`
Stage 4: Development
9. Implementation
`
Stage 5: Release
10. Landing criteria
`
Feature details
Priority | P1 |
Rank | 999 |
Theme / Goal | ` |
Roadmap | Firefox Desktop |
Secondary roadmap | Firefox Mobile |
Feature list | Desktop |
Project | Responsiveness |
Engineering team | JavaScript |
Team status notes
status | notes | |
Products | ` | ` |
Engineering | ` | ` |
Security | sec-review-unnecessary | ` |
Privacy | ` | ` |
Localization | ` | ` |
Accessibility | ` | ` |
Quality assurance | Signed off on Aurora | Test Plan |
User experience | ` | ` |
Product marketing | ` | ` |
Operations | ` | ` |