Bug 130357

Summary: Add one-deep cache to opaque roots hashset.
Product: WebKit Reporter: Andreas Kling <kling>
Component: JavaScriptCoreAssignee: Andreas Kling <kling>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, commit-queue, darin, mhahnenberg
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch idea none

Andreas Kling
Reported 2014-03-17 13:56:21 PDT
For WebCore JS wrappers, we're almost always root()'ed at the Document, which means that we're querying the SlotVisitor's opaque roots set for the same Document* over and over. On DoYouEvenBench, we're spending ~1.5% of time in JSNodeOwner::isReachableFromOpaqueRoots(). This optimization attempts to alleviate some of that.
Attachments
Patch idea (8.47 KB, patch)
2014-03-17 13:58 PDT, Andreas Kling
no flags
Andreas Kling
Comment 1 2014-03-17 13:58:17 PDT
Created attachment 226958 [details] Patch idea
Mark Hahnenberg
Comment 2 2014-03-17 16:12:13 PDT
Comment on attachment 226958 [details] Patch idea r=me
WebKit Commit Bot
Comment 3 2014-03-17 20:28:47 PDT
Comment on attachment 226958 [details] Patch idea Clearing flags on attachment: 226958 Committed r165796: <http://trac.webkit.org/changeset/165796>
WebKit Commit Bot
Comment 4 2014-03-17 20:28:50 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.