[Webkit-unassigned] [Bug 65585] New: JSC GC may not be able to reuse partially-free blocks after a full collection
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Aug 2 17:29:17 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=65585
Summary: JSC GC may not be able to reuse partially-free blocks
after a full collection
Product: WebKit
Version: 528+ (Nightly build)
Platform: All
OS/Version: All
Status: NEW
Severity: Normal
Priority: P2
Component: JavaScriptCore
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: fpizlo at apple.com
The JSC GC has a quirk in the management of free blocks, where when a free block is removed from a size class, all blocks prior to that one may also be removed from the size class's list of to-sweep blocks. The lazy sweep will then overlook these blocks and allocate fresh blocks instead of reusing free space in partially-free blocks. This pathology will persist only until the next non-full collection, so it only has two effects:
1) The next collection may come sooner than otherwise, if there is a lot of free space in partially-free blocks.
2) The allocator has fewer opportunities to "fill in" fragmentation. Oddly, this might be good for performance. But on the downside, it may lead to more fragmentation in the long run.
Notably, other than the risk of fragmentation, this bug does not degrade memory usage - it only has the potential pathology of decreasing the time-to-next-collection after a full collection.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list