[Webkit-unassigned] [Bug 106586] NodeRareData and NodeListsNodeData are never deleted until Node is deleted even if they're no longer used

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jan 24 20:36:04 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=106586





--- Comment #7 from Elliott Sprehn <esprehn at chromium.org>  2013-01-24 20:37:58 PST ---
(In reply to comment #6)
> (In reply to comment #5)
> > I have some fear this will regress performance by creating a lot of memory churn. For instance doing node.childList repeatedly and letting it drop off it will not just allocate the ChildNodeList like it does now, but the NodeRareData, NodeListsNodeData and the ChildNodeList every time.
> 
> That should be considered as a bug/performance issue in GC. A good GC shouldn't be dropping childNodes repeatedly like that.

See the discussion on https://bugs.webkit.org/show_bug.cgi?id=106726

It appears that once you have rare data childNodes is noticeably faster, so dropping rare data when the last node list goes away will probably make repeated traversals of the DOM through childNodes slower. I also question the perf impact from adding all of these subobjects into rare data, or dropping them, since it means lots more little allocations.

I'd really like to see some numbers of real world rare data usage and if this is worth it. It doesn't appear this is going to be much of a memory savings, maybe a few KB, and it has a known perf impact now.

-- 
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