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

Issue 12316084: cc: Consolidate the analysis_canvas operations (Closed)

Created:
7 years, 10 months ago by vmpstr
Modified:
7 years, 9 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, cc-bugs_chromium.org, jam, apatrick_chromium, Leandro Gracia Gil
Visibility:
Public.

Description

cc: Consolidate the analysis_canvas operations This patch combines predictions (color, transparency, and cheapness) into one processing step. Also adds code to use color and transparency information. BUG=179548 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=186819

Patch Set 1 #

Total comments: 4

Patch Set 2 : review + transparency #

Patch Set 3 : bugfix #

Total comments: 1

Patch Set 4 : removed include #

Total comments: 12

Patch Set 5 : using solid prediction #

Patch Set 6 : rebased #

Patch Set 7 : fixed unittest #

Total comments: 9

Patch Set 8 : tomhudson's review #

Total comments: 6

Patch Set 9 : reveman's review #

Patch Set 10 : removed unused vars #

Total comments: 5

Patch Set 11 : reveman's review #

Total comments: 3

Patch Set 12 : bugfix: ensure flags are correct #

Patch Set 13 : review #

Patch Set 14 : changed analysis location #

Total comments: 20

Patch Set 15 : Sami's review #

Patch Set 16 : junov's review #

Patch Set 17 : basic unittests #

Patch Set 18 : #

Total comments: 14

Patch Set 19 : changes #

Patch Set 20 : added dcheck #

Patch Set 21 : added constant instead of -1 #

Total comments: 2

Patch Set 22 : #

Patch Set 23 : rebased #

Patch Set 24 : compile fix #

Patch Set 25 : win warning fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+900 lines, -85 lines) Patch
M cc/debug_colors.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +3 lines, -0 lines 0 comments Download
M cc/debug_colors.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +4 lines, -0 lines 0 comments Download
M cc/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +6 lines, -1 line 0 comments Download
M cc/layer_tree_settings.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M cc/layer_tree_settings.cc View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M cc/picture.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 chunks +7 lines, -4 lines 0 comments Download
M cc/picture.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +9 lines, -11 lines 0 comments Download
M cc/picture_layer_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 3 chunks +20 lines, -6 lines 0 comments Download
M cc/picture_layer_tiling_set.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +1 line, -1 line 0 comments Download
M cc/picture_pile_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +12 lines, -1 line 0 comments Download
M cc/picture_pile_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +49 lines, -10 lines 0 comments Download
M cc/switches.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +2 lines, -0 lines 0 comments Download
M cc/switches.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +6 lines, -0 lines 0 comments Download
M cc/test/fake_picture_layer_tiling_client.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M cc/tile.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +15 lines, -0 lines 0 comments Download
M cc/tile.cc View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
M cc/tile_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 chunks +16 lines, -2 lines 0 comments Download
M cc/tile_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 15 chunks +144 lines, -32 lines 0 comments Download
M chrome/chrome_tests_unit.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/render_process_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 chunks +2 lines, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +4 lines, -0 lines 0 comments Download
M skia/ext/analysis_canvas.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4 chunks +22 lines, -0 lines 0 comments Download
M skia/ext/analysis_canvas.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 8 chunks +253 lines, -16 lines 0 comments Download
A skia/ext/analysis_canvas_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +313 lines, -0 lines 0 comments Download

Messages

Total messages: 48 (0 generated)
vmpstr
This is just rough draft of the design, the interesting parts that change are in ...
7 years, 10 months ago (2013-02-23 00:53:51 UTC) #1
Tom Hudson
Good to see other people having a use for the class. We'd talked in LON ...
7 years, 10 months ago (2013-02-25 17:16:03 UTC) #2
vmpstr
On 2013/02/25 17:16:03, Tom Hudson wrote: > Good to see other people having a use ...
7 years, 10 months ago (2013-02-26 00:07:47 UTC) #3
nduca
@vmpstr, once you get Tom's signoff on this, take it to @reveman for final review ...
7 years, 10 months ago (2013-02-26 05:09:57 UTC) #4
nduca
btw, is GatherPixelRefs implemented in a similar way as AnalysisCanvas?
7 years, 10 months ago (2013-02-26 05:10:19 UTC) #5
Tom Hudson
On 2013/02/26 05:10:19, nduca wrote: > btw, is GatherPixelRefs implemented in a similar way as ...
7 years, 10 months ago (2013-02-26 10:39:07 UTC) #6
vmpstr
I fixed the 2 tiles issue, all other stats are roughly the same. ptal
7 years, 10 months ago (2013-02-26 18:30:55 UTC) #7
vmpstr
+reveman
7 years, 10 months ago (2013-02-26 18:31:31 UTC) #8
reveman
https://codereview.chromium.org/12316084/diff/8002/cc/tile_manager.cc File cc/tile_manager.cc (right): https://codereview.chromium.org/12316084/diff/8002/cc/tile_manager.cc#newcode962 cc/tile_manager.cc:962: picture_pile->IsCheapInRect(rect, contents_scale); nit: 4 space indent here https://codereview.chromium.org/12316084/diff/8002/cc/tile_manager.cc#newcode971 cc/tile_manager.cc:971: ...
7 years, 10 months ago (2013-02-26 23:34:40 UTC) #9
vmpstr
On 2013/02/26 23:34:40, David Reveman wrote: > https://codereview.chromium.org/12316084/diff/8002/cc/tile_manager.cc > File cc/tile_manager.cc (right): > > https://codereview.chromium.org/12316084/diff/8002/cc/tile_manager.cc#newcode962 ...
7 years, 10 months ago (2013-02-27 01:19:36 UTC) #10
Tom Hudson
I'm a bit sad that the AnalysisCanvas is being constructed in an outer class, instead ...
7 years, 9 months ago (2013-02-27 14:49:36 UTC) #11
vmpstr
On 2013/02/27 14:49:36, Tom Hudson wrote: > I'm a bit sad that the AnalysisCanvas is ...
7 years, 9 months ago (2013-02-27 18:27:29 UTC) #12
reveman
https://codereview.chromium.org/12316084/diff/4005/cc/picture_layer_impl.cc File cc/picture_layer_impl.cc (right): https://codereview.chromium.org/12316084/diff/4005/cc/picture_layer_impl.cc#newcode165 cc/picture_layer_impl.cc:165: if (*iter && iter->is_solid_color()) { I think it might ...
7 years, 9 months ago (2013-02-28 18:54:55 UTC) #13
Tom Hudson
I'm not certain about the (*iter) proposal, but I actively dislike the cache refactor. https://codereview.chromium.org/12316084/diff/4005/cc/picture_pile_impl.h ...
7 years, 9 months ago (2013-02-28 19:25:27 UTC) #14
reveman
https://codereview.chromium.org/12316084/diff/4005/cc/picture_pile_impl.h File cc/picture_pile_impl.h (right): https://codereview.chromium.org/12316084/diff/4005/cc/picture_pile_impl.h#newcode77 cc/picture_pile_impl.h:77: } analysis_; On 2013/02/28 19:25:27, Tom Hudson wrote: > ...
7 years, 9 months ago (2013-02-28 19:53:48 UTC) #15
vmpstr
> Picture pile knows nothing about tiles. ManagedTileState needs a bit of cleanup > but ...
7 years, 9 months ago (2013-02-28 20:37:09 UTC) #16
reveman
https://codereview.chromium.org/12316084/diff/20002/cc/picture.h File cc/picture.h (right): https://codereview.chromium.org/12316084/diff/20002/cc/picture.h#newcode50 cc/picture.h:50: bool is_solid_color_; no "_" suffix for public struct members. ...
7 years, 9 months ago (2013-02-28 21:23:10 UTC) #17
reveman
https://codereview.chromium.org/12316084/diff/20002/cc/tile_manager.cc File cc/tile_manager.cc (right): https://codereview.chromium.org/12316084/diff/20002/cc/tile_manager.cc#newcode384 cc/tile_manager.cc:384: tile->picture_pile()->AnalyzeInRect(tile->content_rect(), I changed my mind after talking about this. ...
7 years, 9 months ago (2013-02-28 21:54:28 UTC) #18
vmpstr
On 2013/02/28 21:54:28, David Reveman wrote: > https://codereview.chromium.org/12316084/diff/20002/cc/tile_manager.cc > File cc/tile_manager.cc (right): > > https://codereview.chromium.org/12316084/diff/20002/cc/tile_manager.cc#newcode384 ...
7 years, 9 months ago (2013-02-28 22:30:20 UTC) #19
reveman
ok, very close :) https://codereview.chromium.org/12316084/diff/24002/cc/picture_pile_impl.h File cc/picture_pile_impl.h (right): https://codereview.chromium.org/12316084/diff/24002/cc/picture_pile_impl.h#newcode22 cc/picture_pile_impl.h:22: nit: no need for this ...
7 years, 9 months ago (2013-02-28 23:17:52 UTC) #20
vmpstr
Addressed all points. I did some tracing while pinching in and out on cnn.com (using ...
7 years, 9 months ago (2013-02-28 23:55:28 UTC) #21
Tom Hudson
On 2013/02/28 21:23:10, David Reveman wrote: > https://codereview.chromium.org/12316084/diff/20002/cc/picture_pile_impl.h#newcode50 > cc/picture_pile_impl.h:50: bool is_analyzed_; > why do ...
7 years, 9 months ago (2013-03-01 10:20:02 UTC) #22
Tom Hudson
On 2013/02/28 23:55:28, vmpstr wrote: > The problem is that the analysis time is taken ...
7 years, 9 months ago (2013-03-01 10:21:24 UTC) #23
vmpstr
On 2013/03/01 10:21:24, Tom Hudson wrote: > On 2013/02/28 23:55:28, vmpstr wrote: > > The ...
7 years, 9 months ago (2013-03-01 17:28:30 UTC) #24
reveman
Awesome work! This looks very good and the assigngpumemory part will be cleanup as soon ...
7 years, 9 months ago (2013-03-01 18:33:29 UTC) #25
vmpstr
ping :)
7 years, 9 months ago (2013-03-05 18:07:13 UTC) #26
Sami
Apologies for the delay. I think overall this looks great. Just some questions about the ...
7 years, 9 months ago (2013-03-05 20:18:31 UTC) #27
vmpstr
On 2013/03/05 20:18:31, Sami wrote: > Apologies for the delay. I think overall this looks ...
7 years, 9 months ago (2013-03-05 21:48:44 UTC) #28
Tom Hudson
On 2013/03/05 21:48:44, vmpstr wrote: > On 2013/03/05 20:18:31, Sami wrote: > > > > ...
7 years, 9 months ago (2013-03-05 22:05:24 UTC) #29
Justin Novosad
I reviewed parts of the CL that are related to skia. Found important bugs in ...
7 years, 9 months ago (2013-03-05 22:14:02 UTC) #30
vmpstr
On 2013/03/05 22:14:02, junov wrote: > I reviewed parts of the CL that are related ...
7 years, 9 months ago (2013-03-05 23:32:26 UTC) #31
vmpstr
I've added some very basic unittests.
7 years, 9 months ago (2013-03-06 00:50:23 UTC) #32
Sami
Thanks for adding the test. I'm fine with keeping the separate flag for benchmarking. I ...
7 years, 9 months ago (2013-03-06 11:14:49 UTC) #33
Justin Novosad
On 2013/03/05 23:32:26, vmpstr wrote: > I think there are a few more modes that ...
7 years, 9 months ago (2013-03-06 14:23:27 UTC) #34
Justin Novosad
Unit tests for AnalysisCanvas look good, but I have a few improvements to suggest. In ...
7 years, 9 months ago (2013-03-06 14:59:48 UTC) #35
Justin Novosad
https://codereview.chromium.org/12316084/diff/47001/skia/ext/analysis_canvas.cc File skia/ext/analysis_canvas.cc (right): https://codereview.chromium.org/12316084/diff/47001/skia/ext/analysis_canvas.cc#newcode64 skia/ext/analysis_canvas.cc:64: return draw.fRC->isRect() && You can remove test on draw.fRC->isRect() ...
7 years, 9 months ago (2013-03-06 15:24:42 UTC) #36
vmpstr
> cc/tile_manager.cc:709: if (tile->is_solid_color() || tile->is_transparent()) { > If we're doing prediction benchmarking, then we'd ...
7 years, 9 months ago (2013-03-06 17:52:56 UTC) #37
Justin Novosad
lgtm for skia/ext
7 years, 9 months ago (2013-03-06 18:10:30 UTC) #38
Justin Novosad
On 2013/03/06 18:10:30, junov wrote: > lgtm for skia/ext Readability Nit: the literal -1 in ...
7 years, 9 months ago (2013-03-06 18:15:39 UTC) #39
reveman
lgtm for cc https://codereview.chromium.org/12316084/diff/40002/cc/picture.h File cc/picture.h (right): https://codereview.chromium.org/12316084/diff/40002/cc/picture.h#newcode21 cc/picture.h:21: } // namespace skia nit: "// ...
7 years, 9 months ago (2013-03-07 00:11:28 UTC) #40
vmpstr
+piman for content/ owner's review Please take a look.
7 years, 9 months ago (2013-03-07 01:04:51 UTC) #41
piman
On 2013/03/07 01:04:51, vmpstr wrote: > +piman for content/ owner's review > > Please take ...
7 years, 9 months ago (2013-03-07 01:24:21 UTC) #42
Sami
On 2013/03/06 17:52:56, vmpstr wrote: > Yes you're correct that in order to benchmark we ...
7 years, 9 months ago (2013-03-07 14:35:18 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/12316084/69001
7 years, 9 months ago (2013-03-07 17:51:56 UTC) #44
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 9 months ago (2013-03-07 18:06:25 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/12316084/78002
7 years, 9 months ago (2013-03-07 18:09:13 UTC) #46
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/12316084/85001
7 years, 9 months ago (2013-03-07 19:42:36 UTC) #47
commit-bot: I haz the power
7 years, 9 months ago (2013-03-07 23:52:29 UTC) #48
Message was sent while issue was closed.
Change committed as 186819

Powered by Google App Engine
This is Rietveld 408576698