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

Issue 541843002: cc: Optimise shared raster tile handling in raster tile priority queue. (Closed)

Created:
6 years, 3 months ago by USE eero AT chromium.org
Modified:
6 years, 3 months ago
Reviewers:
reveman, vmpstr
CC:
chromium-reviews, cc-bugs_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

cc: Optimise shared raster tile handling in raster tile priority queue. Avoid keeping track of returned tiles. Instead of that, determine the tree which should return shared tiles and use that information to skip shared tiles in the other tree. Committed: https://crrev.com/fd6ef28080b3761392625e3e39432232cb60ef1c Cr-Commit-Position: refs/heads/master@{#294795}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Change indentation, variable name. Add comments. #

Patch Set 3 : Restored dropped final break. #

Total comments: 12

Patch Set 4 : DCHECK cleanups #

Total comments: 2

Patch Set 5 : Split a helper function, fix a special case. #

Patch Set 6 : Stop special casing the same tile case. #

Total comments: 13

Patch Set 7 : Split common cases into common function/constants #

Total comments: 9

Patch Set 8 : Less code duplication #

Unified diffs Side-by-side diffs Delta from patch set Stats (+60 lines, -48 lines) Patch
M cc/resources/raster_tile_priority_queue.h View 1 2 3 4 5 6 2 chunks +4 lines, -2 lines 0 comments Download
M cc/resources/raster_tile_priority_queue.cc View 1 2 3 4 5 6 7 5 chunks +56 lines, -46 lines 0 comments Download

Messages

Total messages: 28 (2 generated)
USE eero AT chromium.org
PTAL. This replaces the use of the returned_shared_tiles vector with tree and priority comparison. This ...
6 years, 3 months ago (2014-09-04 17:29:59 UTC) #2
vmpstr
Thanks for doing this. Can you post raw numbers of performance improvement? I'm curious which ...
6 years, 3 months ago (2014-09-04 18:26:01 UTC) #3
USE eero AT chromium.org
https://codereview.chromium.org/541843002/diff/1/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/1/cc/resources/raster_tile_priority_queue.cc#newcode170 cc/resources/raster_tile_priority_queue.cc:170: if (has_both_layers) { On 2014/09/04 18:26:01, vmpstr wrote: > ...
6 years, 3 months ago (2014-09-05 07:51:26 UTC) #4
USE eero AT chromium.org
On 2014/09/04 18:26:01, vmpstr wrote: > Thanks for doing this. Can you post raw numbers ...
6 years, 3 months ago (2014-09-05 08:15:32 UTC) #5
USE eero AT chromium.org
On 2014/09/05 08:15:32, e_hakkinen wrote: > On 2014/09/04 18:26:01, vmpstr wrote: > > Thanks for ...
6 years, 3 months ago (2014-09-05 08:25:49 UTC) #6
vmpstr
Update the description please. Instead of WIP put cc. Also I'm not sure I agree ...
6 years, 3 months ago (2014-09-05 16:54:34 UTC) #7
vmpstr
On 2014/09/05 16:54:34, vmpstr wrote: > Update the description please. Instead of WIP put cc. ...
6 years, 3 months ago (2014-09-05 16:55:50 UTC) #8
reveman
Just some DCHECK cleanup suggestions. Looks great otherwise. https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc#newcode162 cc/resources/raster_tile_priority_queue.cc:162: returned_shared_tiles.push_back(**next_iterator); ...
6 years, 3 months ago (2014-09-05 17:08:32 UTC) #9
vmpstr
https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc#newcode126 cc/resources/raster_tile_priority_queue.cc:126: has_both_layers(layer_pair.active && layer_pair.pending) { On 2014/09/05 16:54:34, vmpstr wrote: ...
6 years, 3 months ago (2014-09-05 17:12:57 UTC) #10
eero.hakkinen.fi_gmail.com
On 2014/09/05 16:54:34, vmpstr wrote: > Also I'm not sure I agree with the second ...
6 years, 3 months ago (2014-09-06 20:39:44 UTC) #11
USE eero AT chromium.org
https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/40001/cc/resources/raster_tile_priority_queue.cc#newcode162 cc/resources/raster_tile_priority_queue.cc:162: returned_shared_tiles.push_back(**next_iterator); On 2014/09/05 17:08:31, reveman wrote: > If returned_shared_tiles ...
6 years, 3 months ago (2014-09-08 14:08:17 UTC) #12
USE eero AT chromium.org
PTAL if there is anything left to do.
6 years, 3 months ago (2014-09-08 14:11:30 UTC) #13
reveman
https://codereview.chromium.org/541843002/diff/60001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/60001/cc/resources/raster_tile_priority_queue.cc#newcode177 cc/resources/raster_tile_priority_queue.cc:177: Tile* tile = **next_iterator; Consider adding a helper function ...
6 years, 3 months ago (2014-09-08 14:38:42 UTC) #14
vmpstr
On 2014/09/06 20:39:44, e_hakkinen_ wrote: > On 2014/09/05 16:54:34, vmpstr wrote: > > Also I'm ...
6 years, 3 months ago (2014-09-08 15:44:39 UTC) #15
USE eero AT chromium.org
I noticed that the logic I made does not handle the special case in which ...
6 years, 3 months ago (2014-09-09 17:22:18 UTC) #16
USE eero AT chromium.org
PTAL. I split a helper function so that similarities with NextTileIteratorTree are obvious, cleaned up ...
6 years, 3 months ago (2014-09-09 17:27:20 UTC) #17
reveman
https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc#newcode165 cc/resources/raster_tile_priority_queue.cc:165: if (has_both_layers) { doesn't seem to make sense to ...
6 years, 3 months ago (2014-09-09 18:26:48 UTC) #18
USE eero AT chromium.org
https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc#newcode165 cc/resources/raster_tile_priority_queue.cc:165: if (has_both_layers) { On 2014/09/09 18:26:47, reveman wrote: > ...
6 years, 3 months ago (2014-09-10 07:38:24 UTC) #19
USE eero AT chromium.org
https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc#newcode165 cc/resources/raster_tile_priority_queue.cc:165: if (has_both_layers) { On 2014/09/10 07:38:23, e_hakkinen wrote: > ...
6 years, 3 months ago (2014-09-10 14:08:27 UTC) #20
reveman
https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/100001/cc/resources/raster_tile_priority_queue.cc#newcode230 cc/resources/raster_tile_priority_queue.cc:230: // Keep in sync with NextTileIteratorTree. On 2014/09/10 14:08:26, ...
6 years, 3 months ago (2014-09-10 18:53:35 UTC) #21
USE eero AT chromium.org
https://codereview.chromium.org/541843002/diff/120001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/120001/cc/resources/raster_tile_priority_queue.cc#newcode71 cc/resources/raster_tile_priority_queue.cc:71: const Tile* pending_tile) { On 2014/09/10 18:53:35, reveman wrote: ...
6 years, 3 months ago (2014-09-11 06:55:25 UTC) #22
USE eero AT chromium.org
PTAL. Moved tree_priority switch statements into the HigherPriorityTree function. This avoids code duplication. Changed the ...
6 years, 3 months ago (2014-09-11 07:53:09 UTC) #23
reveman
lgtm https://codereview.chromium.org/541843002/diff/120001/cc/resources/raster_tile_priority_queue.cc File cc/resources/raster_tile_priority_queue.cc (right): https://codereview.chromium.org/541843002/diff/120001/cc/resources/raster_tile_priority_queue.cc#newcode71 cc/resources/raster_tile_priority_queue.cc:71: const Tile* pending_tile) { On 2014/09/11 06:55:24, e_hakkinen ...
6 years, 3 months ago (2014-09-11 12:59:53 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patchset/541843002/140001
6 years, 3 months ago (2014-09-15 08:40:51 UTC) #26
commit-bot: I haz the power
Committed patchset #8 (id:140001) as 9d0bb72416acf5b88ad70528626f955b7d19471f
6 years, 3 months ago (2014-09-15 09:38:30 UTC) #27
commit-bot: I haz the power
6 years, 3 months ago (2014-09-15 09:42:07 UTC) #28
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/fd6ef28080b3761392625e3e39432232cb60ef1c
Cr-Commit-Position: refs/heads/master@{#294795}

Powered by Google App Engine
This is Rietveld 408576698