Closed Bug 1125101 Opened 9 years ago Closed 9 years ago

Incrementalise compacting GC by zones

Categories

(Core :: JavaScript: GC, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
firefox39 --- fixed

People

(Reporter: jonco, Assigned: jonco)

References

(Blocks 1 open bug)

Details

Attachments

(2 files, 2 obsolete files)

We should be able to split up compacting GC by running it a zone at a time until we run out of slice budget.  The is still going to be fairly coarse-grained but better than what we have now.
Attached patch incremental-compacting-1 WIP (obsolete) — Splinter Review
Work in progress.  Reorganise compacting to work a zone at a time.
Attached patch incremental-compacting-2-budget (obsolete) — Splinter Review
Work in progress.  Budget compacting and yield appropriately.
Attachment #8560525 - Attachment is obsolete: true
Attachment #8567913 - Flags: review?(terrence)
Attachment #8560526 - Attachment is obsolete: true
Attachment #8567916 - Flags: review?(terrence)
Attachment #8567913 - Attachment is patch: true
Comment on attachment 8567913 [details] [diff] [review]
incremental-compacting-1

If you export your patches with a .patch suffix, bugzilla will recognize them as patches and set the "patch" flag automatically.
(In reply to Terrence Cole [:terrence] from comment #5)
> Comment on attachment 8567913 [details] [diff] [review]
> incremental-compacting-1
> 
> If you export your patches with a .patch suffix, bugzilla will recognize
> them as patches and set the "patch" flag automatically.

Derp, I said patch too many times in that sentence: it should be a .diff suffix.
Comment on attachment 8567913 [details] [diff] [review]
incremental-compacting-1

Review of attachment 8567913 [details] [diff] [review]:
-----------------------------------------------------------------

::: js/src/jsgc.cpp
@@ +2468,5 @@
> +                 arena;
> +                 arena = arena->next)
> +            {
> +                return arena;
> +                resumePoint:;

This is a label so it should stay unindented by 2 spaces?
Attachment #8567913 - Flags: review?(terrence) → review+
Attachment #8567916 - Flags: review?(terrence) → review+
Backed out for being the likely culprit behind a big spike in Linux64 debug mochitest-bc timeouts/test slowdowns. Retriggers pinned it down to this push, and bug 1130439 seemed unlikely since it landed before and didn't cause any issues like these from my recollection.
https://hg.mozilla.org/integration/mozilla-inbound/rev/dcb0abbfa423

https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=4eab437d2b51
The backout appears to have reduced the failure rate from nearly 100% back to it's previously-crummy state, so I guess that means victory here.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: