Closed Bug 619392 Opened 14 years ago Closed 6 years ago

GC profiling with compartments

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: gwagner, Assigned: gwagner)

References

Details

Attachments

(1 file, 1 obsolete file)

Attached file v8 in browser (obsolete) —
I extended the GCTimer script to print more information for each GC event. This are the results for running v8 in the browser with the patch from bug 605662.
It also shows the reason why we trigger the GC and if we are running a compartment GC.

Live means number of marked objects and finalized means number of finalized objects during this GC event. The marked objects are very stable for each benchmark. The numbers show that "long" living objects are created at the beginning of each benchmark and afterwards we just create objects that don't survive a single GC event.

The numbers suggest to add generation information to the arenas and play some generational GC tricks there. I have to get some numbers but it seems that fragmentation is not a problem here and we would only loose if we try to copy objects around.
We could avoid to use almost-full arenas for allocation and only use empty ones and get the benefit from bump-allocation.
Assignee: general → anygregor
Attached file v8 in browser
Attachment #497815 - Attachment is obsolete: true
No longer blocks: GenerationalGC
Depends on: GenerationalGC
Is there anthing to do for this bug? any enhancement being suggested?  If so please re-open and update the bug summary of what the suggested enhancement is.

Note that the kind of profiling shown here is now available through the gecko profiler.

Thanks.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: