Closed Bug 757483 Opened 13 years ago Closed 13 years ago

Score Rush gets more choppy w/ igc

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla15

People

(Reporter: luke, Assigned: billm)

References

(Blocks 1 open bug)

Details

(Whiteboard: [js:p2][games])

Attachments

(3 files)

Attached file incremental GC profile (deleted) —
With bug 750834 Score Rush is pretty smooth (17ms to render a frame). The GC pauses are 35ms which is also pretty ok. However, if you turn on igc, things are observably worse. The per-frame profile attached also looks a lot worse: lots of recompilation, lots of interpreter time. It almost looks like there is a bug involving igc where we throw away/recompile too much. (To view the profile, you'll need to use billm's viewer.)
Attached file non-incremental GC profile (deleted) —
This is w/ igc turned off. Looks much prettier.
Attachment #626050 - Attachment mime type: text/plain → application/octet-stream
Attachment #626052 - Attachment mime type: text/plain → application/octet-stream
Blocks: 735099
No longer blocks: IncrementalGC
Whiteboard: games → [js:p2][games]
Assignee: general → wmccloskey
Attached patch patch (deleted) — Splinter Review
We were setting the preserve flag in BeginMarkPhase, which is called once per incremental GC, and then unsetting it in ~AutoGCSession, which is called at the end of every slice. So in later slices, code was getting thrown away.
Attachment #626537 - Flags: review?(bhackett1024)
Attachment #626537 - Flags: review?(bhackett1024) → review+
Wow, that was fast! With this patch, I can see the biggest GC slice (the first) is only 16.6ms and the whole frame renders in 28.4ms; big improvement over non-incremental.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: