Closed Bug 928056 Opened 6 years ago Closed 6 years ago

Unbreak GGC on AWFY

Categories

(Core :: JavaScript Engine, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla27

People

(Reporter: terrence, Assigned: terrence)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

When IonBuilder moved off main thread, we started blocking on completion of background threads in AutoTraceSession. For normal GC's this isn't such a big deal, but when it happens every minor collection, we get a catastrophic slowdown. This was slow enough that it took AWFY completely down last week.

See bug 928050 for the complete fix: this is just a quick hack to make GGC work again.
Blocks: 875863
This unbundles AutoPauseWorkersForGC from AutoTraceSession and renames it to AutoPauseWorkersForTracing. I then manually re-added the pause all the places it was before except for generational GC's. This takes my local time for running octane from 8m30s -> 30s.
Attachment #819062 - Flags: review?(bhackett1024)
Attachment #819062 - Flags: review?(bhackett1024) → review+
This changed the ordering of swapping the state and pausing in AutoGCSession, which causes us to occasionally fire spurious assertions. This will be fixed by bug 928050, but in the meantime we should stop the intermittent orange by fixing the ordering.
Attachment #819139 - Flags: review?(bhackett1024)
Attachment #819139 - Flags: review?(bhackett1024) → review?(wmccloskey)
Attachment #819139 - Flags: review?(wmccloskey) → review+
And backed out because I forgot about runtime and apparently can't keep my patches straight when testing.
https://hg.mozilla.org/integration/mozilla-inbound/rev/3b459fed3fc6
https://hg.mozilla.org/mozilla-central/rev/b1ce50371389
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
Blocks: 1507445
You need to log in before you can comment on or make changes to this bug.