WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
79183
[chromium] Avoid culling work for fully-non-opaque tiles, and add tracing for draw culling
https://bugs.webkit.org/show_bug.cgi?id=79183
Summary
[chromium] Avoid culling work for fully-non-opaque tiles, and add tracing for...
Dana Jansens
Reported
2012-02-21 19:03:55 PST
[chromium] Avoid culling work for fully-non-opaque tiles, and add tracing for draw culling
Attachments
Patch
(2.85 KB, patch)
2012-02-21 19:07 PST
,
Dana Jansens
no flags
Details
Formatted Diff
Diff
Patch
(3.70 KB, patch)
2012-02-23 17:48 PST
,
Dana Jansens
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Dana Jansens
Comment 1
2012-02-21 19:07:38 PST
Created
attachment 128109
[details]
Patch
Vangelis Kokkevis
Comment 2
2012-02-21 21:52:15 PST
Comment on
attachment 128109
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=128109&action=review
(Unofficially) LGTM
> Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:244 > + TRACE_EVENT("CCLayerTreeHostImpl::optimizeRenderPasses()", this, 0);
Maybe a good opportunity to also report the # of passes here too?
James Robinson
Comment 3
2012-02-21 22:04:47 PST
Comment on
attachment 128109
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=128109&action=review
>> Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:244 >> + TRACE_EVENT("CCLayerTreeHostImpl::optimizeRenderPasses()", this, 0); > > Maybe a good opportunity to also report the # of passes here too?
We haven't been putting the '()' in traces for functions before. There's no really strong reason for or against this convention, but it's what we've been using so I'd like to stay consistent. I believe you can pass parameters efficiently now by using the TRACE_EVENT1() macro instead of TRACE_EVENT. See the comments in TraceEvent.h for details
Vangelis Kokkevis
Comment 4
2012-02-22 08:02:48 PST
Comment on
attachment 128109
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=128109&action=review
> Source/WebCore/platform/graphics/chromium/cc/CCQuadCuller.cpp:104 > + if (keepQuad && drawQuad->isLayerAxisAlignedIntRect() && !drawQuad->opaqueRect().isEmpty()) {
One more quick comment: I think this loop could be simplified if you add an early out ("continue") after line 96: if (!keepQuad) continue; That way you won't need to keep checking that keepQuad == true
Dana Jansens
Comment 5
2012-02-23 17:48:09 PST
Created
attachment 128621
[details]
Patch Looking for review again to make sure I got this TRACE_EVENT foo correct. I had to cast the passes.size() to make it compile, as size_t confused it and it wasn't sure if "unsigned long" should be an "unsigned long long" or an "unsigned int", etc. @vangelis good call with the continue!
James Robinson
Comment 6
2012-02-23 17:55:44 PST
Comment on
attachment 128621
[details]
Patch Thumbsup!
WebKit Review Bot
Comment 7
2012-02-24 02:59:05 PST
The commit-queue encountered the following flaky tests while processing
attachment 128621
[details]
: perf/mouse-event.html
bug 78736
(author:
eae@chromium.org
) The commit-queue is continuing to process your patch.
WebKit Review Bot
Comment 8
2012-02-24 03:01:09 PST
Comment on
attachment 128621
[details]
Patch Clearing flags on attachment: 128621 Committed
r108764
: <
http://trac.webkit.org/changeset/108764
>
WebKit Review Bot
Comment 9
2012-02-24 03:01:14 PST
All reviewed patches have been landed. Closing bug.
Dana Jansens
Comment 10
2012-03-02 11:44:35 PST
***
Bug 76578
has been marked as a duplicate of this bug. ***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug