Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(621)

Issue 12045086: cc: Throttle tile priority updates to once a frame. (Closed)

Created:
7 years, 11 months ago by danakj
Modified:
7 years, 11 months ago
Reviewers:
epenner, qinmin, enne (OOO)
CC:
chromium-reviews, cc-bugs_chromium.org, piman, backer
Visibility:
Public.

Description

cc: Throttle tile priority updates to once a frame. The tile priority updates happen when calcDrawProperties is called. Now we make sure we early out except in the following cases. On the pending tree, we calculate tile priorities: - Immediately after a commit, so that we can start raster jobs appropriately. - On an animation tick if it is not the same impl frame as the commit occured in. On the active tree, we calculate tile priorities: - During draw, if it is not in the same impl frame as the tree activation occured in. In that frame, we already have priorities from the pending tree. BUG=170807 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=179079

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : #

Total comments: 12

Patch Set 4 : #

Total comments: 2

Patch Set 5 : #

Patch Set 6 : rebasedonmaster #

Unified diffs Side-by-side diffs Delta from patch set Stats (+119 lines, -54 lines) Patch
M cc/damage_tracker_unittest.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M cc/layer_impl.h View 1 2 chunks +2 lines, -1 line 0 comments Download
M cc/layer_tree_host_common.h View 1 2 3 3 chunks +20 lines, -1 line 0 comments Download
M cc/layer_tree_host_common.cc View 1 2 3 4 8 chunks +16 lines, -15 lines 0 comments Download
M cc/layer_tree_host_common_unittest.cc View 1 18 chunks +18 lines, -18 lines 0 comments Download
M cc/layer_tree_host_impl.cc View 1 2 3 4 5 4 chunks +4 lines, -4 lines 0 comments Download
M cc/layer_tree_impl.h View 1 4 5 1 chunk +7 lines, -1 line 0 comments Download
M cc/layer_tree_impl.cc View 1 2 3 4 5 3 chunks +17 lines, -3 lines 0 comments Download
M cc/occlusion_tracker_unittest.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M cc/picture_layer_impl.h View 1 2 3 4 5 2 chunks +3 lines, -2 lines 0 comments Download
M cc/picture_layer_impl.cc View 1 2 3 4 5 4 chunks +30 lines, -7 lines 0 comments Download

Messages

Total messages: 18 (0 generated)
danakj
7 years, 11 months ago (2013-01-25 04:48:57 UTC) #1
danakj
After discussing this out, it seems the most important thing is calling this once a ...
7 years, 11 months ago (2013-01-25 04:51:29 UTC) #2
qinmin
https://codereview.chromium.org/12045086/diff/1004/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/1004/cc/picture_layer_impl.cc#newcode203 cc/picture_layer_impl.cc:203: current_source_frame_number > last_source_frame_number_; i think it is possible for ...
7 years, 11 months ago (2013-01-25 05:07:53 UTC) #3
danakj
https://codereview.chromium.org/12045086/diff/1004/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/1004/cc/picture_layer_impl.cc#newcode203 cc/picture_layer_impl.cc:203: current_source_frame_number > last_source_frame_number_; On 2013/01/25 05:07:53, qinmin wrote: > ...
7 years, 11 months ago (2013-01-25 05:09:01 UTC) #4
enne (OOO)
https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc#newcode72 cc/picture_layer_impl.cc:72: layer_impl->last_impl_frame_number_ = 0; I don't understand this. I think ...
7 years, 11 months ago (2013-01-25 18:17:52 UTC) #5
danakj
https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc#newcode72 cc/picture_layer_impl.cc:72: layer_impl->last_impl_frame_number_ = 0; On 2013/01/25 18:17:52, enne wrote: > ...
7 years, 11 months ago (2013-01-25 18:25:47 UTC) #6
enne (OOO)
https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc#newcode72 cc/picture_layer_impl.cc:72: layer_impl->last_impl_frame_number_ = 0; On 2013/01/25 18:25:47, danakj wrote: > ...
7 years, 11 months ago (2013-01-25 18:51:26 UTC) #7
danakj
https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc#newcode72 cc/picture_layer_impl.cc:72: layer_impl->last_impl_frame_number_ = 0; On 2013/01/25 18:51:26, enne wrote: > ...
7 years, 11 months ago (2013-01-25 18:56:29 UTC) #8
enne (OOO)
https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/picture_layer_impl.cc#newcode72 cc/picture_layer_impl.cc:72: layer_impl->last_impl_frame_number_ = 0; On 2013/01/25 18:56:30, danakj wrote: > ...
7 years, 11 months ago (2013-01-25 19:00:26 UTC) #9
epenner
https://codereview.chromium.org/12045086/diff/7001/cc/layer_tree_host_impl.cc File cc/layer_tree_host_impl.cc (right): https://codereview.chromium.org/12045086/diff/7001/cc/layer_tree_host_impl.cc#newcode196 cc/layer_tree_host_impl.cc:196: pendingTree()->UpdateDrawProperties(LayerTreeImpl::UPDATE_PENDING_TREE); Wouldn't it be easier to just call pendingTree()->CalculateTilePriorities() ...
7 years, 11 months ago (2013-01-25 20:29:09 UTC) #10
danakj
On Fri, Jan 25, 2013 at 3:29 PM, <epenner@chromium.org> wrote: > > https://codereview.chromium.**org/12045086/diff/7001/cc/** > layer_tree_host_impl.cc<https://codereview.chromium.org/12045086/diff/7001/cc/layer_tree_host_impl.cc> ...
7 years, 11 months ago (2013-01-25 20:34:11 UTC) #11
danakj
This patch as is: *RESULT 10_10_layer_tree: frames= 2670.67 runs/s Moving into a separate tree walk: ...
7 years, 11 months ago (2013-01-25 20:43:25 UTC) #12
danakj
PTAL. Reviewing the logic. On commit, the source frame number changes. So no early out, ...
7 years, 11 months ago (2013-01-25 20:45:25 UTC) #13
enne (OOO)
https://codereview.chromium.org/12045086/diff/14001/cc/layer_tree_impl.cc File cc/layer_tree_impl.cc (right): https://codereview.chromium.org/12045086/diff/14001/cc/layer_tree_impl.cc#newcode133 cc/layer_tree_impl.cc:133: LayerTreeHostCommon::callFunctionForSubtree<UpdateTilePrioritiesForLayer>( I think this might be unneeded. You should ...
7 years, 11 months ago (2013-01-25 20:59:10 UTC) #14
danakj
https://codereview.chromium.org/12045086/diff/14001/cc/layer_tree_impl.cc File cc/layer_tree_impl.cc (right): https://codereview.chromium.org/12045086/diff/14001/cc/layer_tree_impl.cc#newcode133 cc/layer_tree_impl.cc:133: LayerTreeHostCommon::callFunctionForSubtree<UpdateTilePrioritiesForLayer>( On 2013/01/25 20:59:10, enne wrote: > I think ...
7 years, 11 months ago (2013-01-25 21:18:15 UTC) #15
enne (OOO)
\okayguy{lgtm} I wish there were a less complicated way to do this, but I can't ...
7 years, 11 months ago (2013-01-25 22:27:58 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/12045086/22001
7 years, 11 months ago (2013-01-26 18:53:19 UTC) #17
commit-bot: I haz the power
7 years, 11 months ago (2013-01-27 05:41:20 UTC) #18
Message was sent while issue was closed.
Change committed as 179079

Powered by Google App Engine
This is Rietveld 408576698