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

Issue 16871016: cc: Use BeginFrameArgs (Closed)

Created:
7 years, 6 months ago by brianderson
Modified:
7 years, 1 month ago
CC:
chromium-reviews, cc-bugs_chromium.org, no sievers, joth, klobag.chromium, wiltzius, ccameron, jdduke (slow), vmpstr
Base URL:
http://git.chromium.org/chromium/src.git@bfargs2
Visibility:
Public.

Description

cc: Use BeginFrameArgs This patch adds logic to the Scheduler to actually use the BeginFrame and deadline. SchedulerStateMachine::begin_frame_state has been added and can be in one of 4 states: Idle, InsideBeginFrame, DeadlinePending, or InsideDeadline. Notable restrictions of the states are: - We start a commit as soon after InsideBeginFrame as we can, since the BeginFrame will be coordinated with user input. - We do not start a commit while Idle, in order to wait for the next batch of user input. - Draw and swap only occurs during the InsideDeadline state. The deadlines of the Browser and Renderer compositor can be staggered in order to have a total draw latency of < 1 frame when starting off. If we can't hit 1 frame of latency consistently, we will fallback to a higher latency mode to increase throughput. Making these changes exposed some bugs and necessitated some other changes that are hard to commit separately. Notable changes include: 1) The Scheduler listens to the ReadyToActivate signal and makes the final call regarding when to activate. This avoids activating commit 2 before commit 1 has been drawn. It also helps reduce the number of calls to ManageTiles because we don't call ActivatePendingTreeIfNeeded every frame. 2) An OutputSurfaceState to make sure we do not draw after output surface initialization until after the first commit. 3) A ForcedRedrawOnTimeoutState that forces a draw and swap if we've skipped too many draws because of checkerboarding. This is synchronized with the normal display pipeline and respects the BeginFrame and deadline. 4) A SynchronousReadback state to track readback commits and their "replacement commits" to make sure we don't draw before activation of the readback commit and don't swap before activation of the replacement commit. This executes as fast as possible and does not respect the BeginFrame/deadline timing semantics. Back to back readbacks before the replacement commit arrive are supported. 5) A number of unit test updates and fixes. BUG=243461 BUG=269272

Patch Set 1 #

Total comments: 23

Patch Set 2 : Many optimizations. Address comments. #

Total comments: 9

Patch Set 3 : address comments #

Total comments: 4

Patch Set 4 : Tweaks; Address more comments; #

Total comments: 2

Patch Set 5 : fix some tests; needs rebase; #

Total comments: 3

Patch Set 6 : Rebase; More tests fixed; #

Total comments: 4

Patch Set 7 : Fix tests, output surface lost, and WebView #

Patch Set 8 : else if typo #

Total comments: 6

Patch Set 9 : OVERRIDE fixes #

Patch Set 10 : StateMachine test working; Reworked readback. #

Total comments: 1

Patch Set 11 : Fixed all existing tests! New tests pending... #

Total comments: 9

Patch Set 12 : A bit of cleanup #

Total comments: 3

Patch Set 13 : Rebase; Avoid double activate; Fix OutputSurface init and page scroll delta; #

Total comments: 14

Patch Set 14 : Fix compile error #

Patch Set 15 : Fix clang compile errors #

Patch Set 16 : Address comments #

Patch Set 17 : Allow back2back readbacks #

Total comments: 4

Patch Set 18 : Another round of cleanup #

Total comments: 23

Patch Set 19 : More cleanup #

Patch Set 20 : rebase #

Patch Set 21 : Undo page scale changes, LayerFix TreeHostAnimationTestTickAnimationWhileBackgrounded #

Patch Set 22 : rebase #

Total comments: 3

Patch Set 23 : Address comments #

Patch Set 24 : Add missing OVERRIDE #

Total comments: 1

Patch Set 25 : rebase #

Patch Set 26 : Revert TextureLayer unittest changes; Fix rare double BeginFrame after DidLoseOutputSurface #

Patch Set 27 : Improve main thread perf by pushing out deadline if no Impl updates. #

Total comments: 26

Patch Set 28 : rebase #

Patch Set 29 : git cl format #

Patch Set 30 : Address enne's commetns #

Patch Set 31 : Fix tests #

Total comments: 3

Patch Set 32 : rebase #

Patch Set 33 : Add an --enable-deadline-scheduler commandline flag. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+1851 lines, -1114 lines) Patch
M cc/base/switches.h 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 25 26 27 28 29 30 31 32 2 chunks +3 lines, -0 lines 0 comments Download
M cc/base/switches.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 25 26 27 28 29 30 31 32 2 chunks +25 lines, -0 lines 0 comments Download
M cc/output/begin_frame_args.h 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 25 26 27 28 29 30 31 32 1 chunk +1 line, -3 lines 0 comments Download
M cc/output/begin_frame_args.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 25 26 27 28 29 30 31 32 2 chunks +6 lines, -4 lines 0 comments Download
M cc/output/output_surface.h 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 25 26 27 28 29 30 31 3 chunks +5 lines, -5 lines 0 comments Download
M cc/output/output_surface.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 25 26 27 28 29 30 31 4 chunks +11 lines, -11 lines 0 comments Download
M cc/output/output_surface_unittest.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 25 26 27 28 29 30 31 7 chunks +36 lines, -19 lines 0 comments Download
M cc/scheduler/frame_rate_controller.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 25 26 27 28 29 30 31 32 2 chunks +9 lines, -7 lines 0 comments Download
M cc/scheduler/scheduler.h 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 25 26 27 28 6 chunks +22 lines, -19 lines 0 comments Download
M cc/scheduler/scheduler.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 25 26 27 28 29 30 31 32 14 chunks +119 lines, -55 lines 1 comment Download
M cc/scheduler/scheduler_settings.h 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 25 26 27 28 29 30 31 32 1 chunk +2 lines, -0 lines 0 comments Download
M cc/scheduler/scheduler_settings.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 25 26 27 28 29 30 31 32 1 chunk +4 lines, -2 lines 0 comments Download
M cc/scheduler/scheduler_state_machine.h 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 25 26 8 chunks +91 lines, -44 lines 0 comments Download
M cc/scheduler/scheduler_state_machine.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 25 26 27 28 29 30 31 32 13 chunks +429 lines, -191 lines 2 comments Download
M cc/scheduler/scheduler_state_machine_unittest.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 25 26 27 28 46 chunks +548 lines, -461 lines 0 comments Download
M cc/scheduler/scheduler_unittest.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 25 26 27 28 28 chunks +247 lines, -96 lines 0 comments Download
M cc/test/fake_layer_tree_host_impl_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M cc/test/layer_tree_test.h 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 25 26 27 28 1 chunk +2 lines, -0 lines 0 comments Download
M cc/test/layer_tree_test.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 25 26 27 28 29 30 31 1 chunk +5 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.h 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 25 26 27 4 chunks +3 lines, -1 line 0 comments Download
M cc/trees/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 23 24 25 26 27 28 29 30 31 11 chunks +18 lines, -10 lines 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.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 25 26 27 28 29 30 31 3 chunks +6 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_unittest.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 25 26 27 28 29 30 31 26 chunks +61 lines, -66 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_animation.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 25 26 27 28 29 4 chunks +14 lines, -12 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_context.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 25 26 27 28 29 30 31 1 chunk +3 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_delegated.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 25 26 27 28 29 30 31 2 chunks +10 lines, -15 lines 0 comments Download
M cc/trees/layer_tree_settings.h 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 25 26 27 28 29 30 31 32 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/layer_tree_settings.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 25 26 27 28 29 30 31 32 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/single_thread_proxy.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/single_thread_proxy.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 25 26 27 1 chunk +5 lines, -0 lines 0 comments Download
M cc/trees/thread_proxy.h 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 25 26 27 28 5 chunks +15 lines, -8 lines 0 comments Download
M cc/trees/thread_proxy.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 25 26 27 28 29 30 31 32 21 chunks +119 lines, -81 lines 0 comments Download
M chrome/browser/chromeos/login/chrome_restart_request.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 25 26 27 28 29 30 31 32 1 chunk +2 lines, -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 22 23 24 25 26 27 28 29 30 31 32 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.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 25 26 27 28 29 30 31 32 2 chunks +12 lines, -2 lines 1 comment 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 23 24 25 26 27 28 29 30 31 32 1 chunk +2 lines, -0 lines 0 comments Download
M ui/compositor/compositor.h 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 25 26 27 28 29 30 31 32 2 chunks +4 lines, -0 lines 0 comments Download
M ui/compositor/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 23 24 25 26 27 28 29 30 31 32 2 chunks +6 lines, -0 lines 0 comments Download

Messages

Total messages: 89 (0 generated)
brianderson
First draft. PTAL. It still needs a lot of characterization and fine tuning. Depends on: ...
7 years, 6 months ago (2013-06-14 04:08:58 UTC) #1
brianderson
https://codereview.chromium.org/16871016/diff/1/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/1/cc/scheduler/scheduler.cc#newcode209 cc/scheduler/scheduler.cc:209: do { Changing to a do-while loop allows UpdateState ...
7 years, 6 months ago (2013-06-14 04:16:29 UTC) #2
ajuma
I really like the overall direction here. https://codereview.chromium.org/16871016/diff/1/cc/scheduler/scheduler_state_machine.cc File cc/scheduler/scheduler_state_machine.cc (right): https://codereview.chromium.org/16871016/diff/1/cc/scheduler/scheduler_state_machine.cc#newcode114 cc/scheduler/scheduler_state_machine.cc:114: bool SchedulerStateMachine::HasAttemptedTreeActivationThisFrame() ...
7 years, 6 months ago (2013-06-14 15:22:32 UTC) #3
Sami
Nice, it's all coming together :) https://codereview.chromium.org/16871016/diff/1/cc/output/begin_frame_args.h File cc/output/begin_frame_args.h (right): https://codereview.chromium.org/16871016/diff/1/cc/output/begin_frame_args.h#newcode26 cc/output/begin_frame_args.h:26: BeginFrameArgs CreateBeginFrameWithAdjustedDeadline(base::TimeDelta delta); ...
7 years, 6 months ago (2013-06-14 15:59:20 UTC) #4
brianderson
https://codereview.chromium.org/16871016/diff/1/cc/output/begin_frame_args.h File cc/output/begin_frame_args.h (right): https://codereview.chromium.org/16871016/diff/1/cc/output/begin_frame_args.h#newcode26 cc/output/begin_frame_args.h:26: BeginFrameArgs CreateBeginFrameWithAdjustedDeadline(base::TimeDelta delta); On 2013/06/14 15:59:20, Sami wrote: > ...
7 years, 6 months ago (2013-06-14 18:42:35 UTC) #5
brianderson
PTAL. Joth, Bo, can you guys test this patch locally to see if anything needs ...
7 years, 6 months ago (2013-06-21 01:02:52 UTC) #6
nduca
https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.h File cc/scheduler/scheduler.h (right): https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.h#newcode50 cc/scheduler/scheduler.h:50: virtual void PostBeginFrameDeadline(const base::Closure& closure, i think this should ...
7 years, 6 months ago (2013-06-21 01:14:18 UTC) #7
nduca
https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.cc#newcode227 cc/scheduler/scheduler.cc:227: "state", state_machine_.ToString()); medium term, might as well make StateMachine ...
7 years, 6 months ago (2013-06-21 01:21:40 UTC) #8
brianderson
https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler_state_machine.h File cc/scheduler/scheduler_state_machine.h (right): https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler_state_machine.h#newcode34 cc/scheduler/scheduler_state_machine.h:34: enum BeginFrameState { Note: This version of the patch ...
7 years, 6 months ago (2013-06-21 01:27:20 UTC) #9
brianderson
https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/11001/cc/scheduler/scheduler.cc#newcode227 cc/scheduler/scheduler.cc:227: "state", state_machine_.ToString()); On 2013/06/21 01:21:40, nduca wrote: > medium ...
7 years, 6 months ago (2013-06-21 01:42:47 UTC) #10
brianderson
Addressed comments in patch set 2.
7 years, 6 months ago (2013-06-21 02:08:35 UTC) #11
nduca
Thanks for clarifying. > I was originally going to implement it that way, but found ...
7 years, 6 months ago (2013-06-21 02:45:00 UTC) #12
boliu
Thanks for looping us in. I applied Patch set 2 (btw it needs a rebase) ...
7 years, 6 months ago (2013-06-21 03:35:09 UTC) #13
Sami
I think the new begin frame state machine looks a lot simpler that the previous ...
7 years, 6 months ago (2013-06-21 10:27:42 UTC) #14
brianderson
On 2013/06/21 03:35:09, boliu wrote: > Thanks for looping us in. I applied Patch set ...
7 years, 6 months ago (2013-06-21 17:11:39 UTC) #15
ajuma
On 2013/06/21 01:02:52, Brian Anderson wrote: > I still need to fix tests, but this ...
7 years, 6 months ago (2013-06-21 17:15:24 UTC) #16
boliu
On 2013/06/21 17:11:39, Brian Anderson wrote: > On 2013/06/21 03:35:09, boliu wrote: > > I ...
7 years, 6 months ago (2013-06-21 18:13:34 UTC) #17
brianderson
Addressed some more comments. I would like to hold off on the change where the ...
7 years, 6 months ago (2013-06-21 22:30:08 UTC) #18
nduca
LGTM for when its needed. This is a good step forward.
7 years, 6 months ago (2013-06-21 22:51:26 UTC) #19
boliu
https://codereview.chromium.org/16871016/diff/34002/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/34002/cc/scheduler/scheduler.cc#newcode144 cc/scheduler/scheduler.cc:144: !settings_.using_synchronous_renderer_compositor); It seems webview broke without proactive_begin_frame_wanted_. Scheduler::SetCanDraw is ...
7 years, 6 months ago (2013-06-24 16:47:55 UTC) #20
brianderson
https://codereview.chromium.org/16871016/diff/34002/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/34002/cc/scheduler/scheduler.cc#newcode144 cc/scheduler/scheduler.cc:144: !settings_.using_synchronous_renderer_compositor); On 2013/06/24 16:47:55, boliu wrote: > It seems ...
7 years, 6 months ago (2013-06-24 18:54:06 UTC) #21
brianderson
Just wanted to give an update on this issue, since the branch point is supposed ...
7 years, 6 months ago (2013-06-24 19:08:30 UTC) #22
Sami
https://codereview.chromium.org/16871016/diff/46001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/46001/cc/scheduler/scheduler.cc#newcode236 cc/scheduler/scheduler.cc:236: TRACE_EVENT0("cc", str.c_str()); Can we trace strings like this nowadays? ...
7 years, 5 months ago (2013-07-02 10:28:05 UTC) #23
danakj
https://codereview.chromium.org/16871016/diff/46001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/46001/cc/scheduler/scheduler.cc#newcode236 cc/scheduler/scheduler.cc:236: TRACE_EVENT0("cc", str.c_str()); On 2013/07/02 10:28:06, Sami wrote: > Can ...
7 years, 5 months ago (2013-07-02 13:24:24 UTC) #24
brianderson
> https://codereview.chromium.org/16871016/diff/46001/cc/scheduler/scheduler.cc#newcode236 > cc/scheduler/scheduler.cc:236: TRACE_EVENT0("cc", str.c_str()); > Can we trace strings like this nowadays? I ...
7 years, 5 months ago (2013-07-09 01:39:28 UTC) #25
brianderson
PTAL. Still need to fix the scheduler unit tests. All other unit tests were fixed, ...
7 years, 5 months ago (2013-07-09 01:50:48 UTC) #26
boliu
A couple more requests for webview: https://codereview.chromium.org/18939003/ Basically need to ensure the deadline is called ...
7 years, 5 months ago (2013-07-09 23:33:26 UTC) #27
brianderson
https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc#newcode180 cc/scheduler/scheduler.cc:180: if (settings_.using_synchronous_renderer_compositor) Bo, does this method fix WebView so ...
7 years, 5 months ago (2013-07-10 21:58:03 UTC) #28
boliu
https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc#newcode180 cc/scheduler/scheduler.cc:180: if (settings_.using_synchronous_renderer_compositor) On 2013/07/10 21:58:04, Brian Anderson wrote: > ...
7 years, 5 months ago (2013-07-10 23:39:52 UTC) #29
brianderson
https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc (right): https://codereview.chromium.org/16871016/diff/66001/cc/scheduler/scheduler.cc#newcode180 cc/scheduler/scheduler.cc:180: if (settings_.using_synchronous_renderer_compositor) On 2013/07/10 23:39:52, boliu wrote: > On ...
7 years, 5 months ago (2013-07-11 00:25:42 UTC) #30
brianderson
In working on the scheduler unit tests, and had a few questions reagarding readbacks: For ...
7 years, 5 months ago (2013-07-12 02:06:05 UTC) #31
piman
On Thu, Jul 11, 2013 at 7:06 PM, <brianderson@chromium.org> wrote: > In working on the ...
7 years, 5 months ago (2013-07-12 02:41:09 UTC) #32
danakj
On Thu, Jul 11, 2013 at 7:06 PM, <brianderson@chromium.org> wrote: > In working on the ...
7 years, 5 months ago (2013-07-12 15:33:33 UTC) #33
brianderson
Thanks for the background @piman and @danakj! > Blink does not have access to the ...
7 years, 5 months ago (2013-07-12 18:15:34 UTC) #34
danakj
On Fri, Jul 12, 2013 at 11:15 AM, <brianderson@chromium.org> wrote: > Thanks for the background ...
7 years, 5 months ago (2013-07-12 18:19:16 UTC) #35
piman
On Fri, Jul 12, 2013 at 11:15 AM, <brianderson@chromium.org> wrote: > Thanks for the background ...
7 years, 5 months ago (2013-07-12 18:29:57 UTC) #36
brianderson
The existing SchedulerStateMachine unit tests are passing now. https://codereview.chromium.org/16871016/diff/90001/cc/scheduler/scheduler_state_machine.h File cc/scheduler/scheduler_state_machine.h (right): https://codereview.chromium.org/16871016/diff/90001/cc/scheduler/scheduler_state_machine.h#newcode60 cc/scheduler/scheduler_state_machine.h:60: enum ...
7 years, 5 months ago (2013-07-17 02:31:00 UTC) #37
brianderson
PTAL. All existing tests have been fixed. I still need to add additional unit tests ...
7 years, 5 months ago (2013-07-18 02:02:48 UTC) #38
brianderson
Cleanup patch. Needs a rebase though. New tests still pending. One area that is definitely ...
7 years, 5 months ago (2013-07-24 00:06:31 UTC) #39
nduca
LGTM to land when you're ready, though if you can give a quick thought to ...
7 years, 5 months ago (2013-07-25 00:10:14 UTC) #40
brianderson
cc+=Jared
7 years, 5 months ago (2013-07-25 17:57:23 UTC) #41
brianderson
I'm fixing several things not related to this patch, but doing them separately will be ...
7 years, 4 months ago (2013-08-02 02:29:50 UTC) #42
enne (OOO)
https://codereview.chromium.org/16871016/diff/140001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/140001/cc/layers/texture_layer_unittest.cc#newcode843 cc/layers/texture_layer_unittest.cc:843: virtual void DidCommit() OVERRIDE { This test seems like ...
7 years, 4 months ago (2013-08-02 19:41:24 UTC) #43
brianderson
https://codereview.chromium.org/16871016/diff/140001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/140001/cc/layers/texture_layer_unittest.cc#newcode843 cc/layers/texture_layer_unittest.cc:843: virtual void DidCommit() OVERRIDE { On 2013/08/02 19:41:25, enne ...
7 years, 4 months ago (2013-08-02 23:04:30 UTC) #44
enne (OOO)
https://codereview.chromium.org/16871016/diff/140001/cc/scheduler/scheduler_state_machine.cc File cc/scheduler/scheduler_state_machine.cc (right): https://codereview.chromium.org/16871016/diff/140001/cc/scheduler/scheduler_state_machine.cc#newcode278 cc/scheduler/scheduler_state_machine.cc:278: return active_tree_has_been_drawn_ || active_tree_is_null_; On 2013/08/02 23:04:31, Brian Anderson ...
7 years, 4 months ago (2013-08-05 19:37:42 UTC) #45
brianderson
A note about the latest patch: The TabCaptureApiTest.ActiveTabPermission test somehow triggers back to back readbacks ...
7 years, 4 months ago (2013-08-05 21:56:18 UTC) #46
enne (OOO)
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { It seems like this ...
7 years, 4 months ago (2013-08-06 23:35:15 UTC) #47
brianderson
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/06 23:35:16, enne ...
7 years, 4 months ago (2013-08-07 01:55:50 UTC) #48
brianderson
7 years, 4 months ago (2013-08-07 01:56:55 UTC) #49
brianderson
I undid the page scale animation changes and the LayerTreeHostTestStartPageScaleAnimation test still passes.
7 years, 4 months ago (2013-08-07 03:05:11 UTC) #50
reveman
https://codereview.chromium.org/16871016/diff/216001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/16871016/diff/216001/cc/trees/layer_tree_host_impl.cc#newcode1424 cc/trees/layer_tree_host_impl.cc:1424: void LayerTreeHostImpl::ActivatePendingTreeIfNeeded() { can this function be removed?
7 years, 4 months ago (2013-08-07 03:32:28 UTC) #51
enne (OOO)
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/07 01:55:51, Brian ...
7 years, 4 months ago (2013-08-07 15:44:19 UTC) #52
brianderson
https://codereview.chromium.org/16871016/diff/188001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/trees/layer_tree_host_impl.cc#newcode324 cc/trees/layer_tree_host_impl.cc:324: return false; On 2013/08/07 15:44:19, enne wrote: > On ...
7 years, 4 months ago (2013-08-07 18:41:56 UTC) #53
reveman
https://codereview.chromium.org/16871016/diff/216001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/16871016/diff/216001/cc/trees/layer_tree_host_impl.cc#newcode1424 cc/trees/layer_tree_host_impl.cc:1424: void LayerTreeHostImpl::ActivatePendingTreeIfNeeded() { On 2013/08/07 18:41:57, Brian Anderson wrote: ...
7 years, 4 months ago (2013-08-07 19:09:38 UTC) #54
piman
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/07 15:44:19, enne ...
7 years, 4 months ago (2013-08-07 19:39:52 UTC) #55
enne (OOO)
https://codereview.chromium.org/16871016/diff/188001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/trees/layer_tree_host_impl.cc#newcode324 cc/trees/layer_tree_host_impl.cc:324: return false; On 2013/08/07 18:41:57, Brian Anderson wrote: > ...
7 years, 4 months ago (2013-08-07 19:48:48 UTC) #56
brianderson
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/07 19:39:52, piman ...
7 years, 4 months ago (2013-08-07 20:12:28 UTC) #57
piman
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/07 20:12:29, Brian ...
7 years, 4 months ago (2013-08-07 20:27:45 UTC) #58
brianderson
https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc File cc/layers/texture_layer_unittest.cc (right): https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc#newcode1093 cc/layers/texture_layer_unittest.cc:1093: virtual void DidCommit() OVERRIDE { On 2013/08/07 20:27:45, piman ...
7 years, 4 months ago (2013-08-07 20:33:00 UTC) #59
piman
On Wed, Aug 7, 2013 at 1:33 PM, <brianderson@chromium.org> wrote: > > https://codereview.chromium.**org/16871016/diff/188001/cc/** > layers/texture_layer_unittest.**cc<https://codereview.chromium.org/16871016/diff/188001/cc/layers/texture_layer_unittest.cc> ...
7 years, 4 months ago (2013-08-07 20:41:51 UTC) #60
brianderson
> > > > Doesn't that mean that we have 2 commits in flight now? ...
7 years, 4 months ago (2013-08-07 21:34:23 UTC) #61
danakj
On Wed, Aug 7, 2013 at 5:34 PM, <brianderson@chromium.org> wrote: > > >> > Doesn't ...
7 years, 4 months ago (2013-08-07 21:38:02 UTC) #62
brianderson
On 2013/08/07 21:34:23, Brian Anderson wrote: > > > > > > Doesn't that mean ...
7 years, 4 months ago (2013-08-07 21:44:30 UTC) #63
danakj
On Wed, Aug 7, 2013 at 5:44 PM, <brianderson@chromium.org> wrote: > On 2013/08/07 21:34:23, Brian ...
7 years, 4 months ago (2013-08-07 21:47:49 UTC) #64
piman
On Wed, Aug 7, 2013 at 2:34 PM, <brianderson@chromium.org> wrote: > > >> > Doesn't ...
7 years, 4 months ago (2013-08-07 21:49:04 UTC) #65
piman
On Wed, Aug 7, 2013 at 2:47 PM, Dana Jansens <danakj@chromium.org> wrote: > On Wed, ...
7 years, 4 months ago (2013-08-07 21:51:03 UTC) #66
enne (OOO)
Whoa whoa whoa. How does hit patch change memory behavior? Previously we had this: commit ...
7 years, 4 months ago (2013-08-07 21:51:19 UTC) #67
danakj
On Wed, Aug 7, 2013 at 5:51 PM, <enne@chromium.org> wrote: > Whoa whoa whoa. How ...
7 years, 4 months ago (2013-08-07 21:59:40 UTC) #68
piman
On Wed, Aug 7, 2013 at 2:59 PM, Dana Jansens <danakj@chromium.org> wrote: > On Wed, ...
7 years, 4 months ago (2013-08-07 22:15:01 UTC) #69
piman
On Wed, Aug 7, 2013 at 2:51 PM, <enne@chromium.org> wrote: > Whoa whoa whoa. How ...
7 years, 4 months ago (2013-08-07 22:59:02 UTC) #70
brianderson
On 2013/08/07 22:15:01, piman wrote: > On Wed, Aug 7, 2013 at 2:59 PM, Dana ...
7 years, 4 months ago (2013-08-08 00:11:26 UTC) #71
brianderson
On 2013/08/07 22:59:02, piman wrote: > On Wed, Aug 7, 2013 at 2:51 PM, <mailto:enne@chromium.org> ...
7 years, 4 months ago (2013-08-08 00:24:36 UTC) #72
brianderson
https://codereview.chromium.org/16871016/diff/232001/cc/output/begin_frame_args.cc File cc/output/begin_frame_args.cc (right): https://codereview.chromium.org/16871016/diff/232001/cc/output/begin_frame_args.cc#newcode68 cc/output/begin_frame_args.cc:68: deadline = base::TimeTicks(); @piman: I know you had reservations ...
7 years, 4 months ago (2013-08-08 02:45:04 UTC) #73
enne (OOO)
I took a look through all the test changes. Most of the changes seem fine, ...
7 years, 4 months ago (2013-08-15 19:47:59 UTC) #74
brianderson
https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc File cc/trees/layer_tree_host_unittest.cc (right): https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc#newcode89 cc/trees/layer_tree_host_unittest.cc:89: EXPECT_GE(num_commits_, 1); On 2013/08/15 19:47:59, enne wrote: > I ...
7 years, 4 months ago (2013-08-15 23:05:09 UTC) #75
brianderson
https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc File cc/trees/layer_tree_host_unittest.cc (right): https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc#newcode1494 cc/trees/layer_tree_host_unittest.cc:1494: if (host_impl->active_tree()->source_frame_number() == 0) { On 2013/08/15 23:05:10, Brian ...
7 years, 4 months ago (2013-08-15 23:30:23 UTC) #76
brianderson
https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest_animation.cc File cc/trees/layer_tree_host_unittest_animation.cc (right): https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest_animation.cc#newcode273 cc/trees/layer_tree_host_unittest_animation.cc:273: if (!host_impl->active_tree()->root_layer()) > Is drawing happening without a root ...
7 years, 4 months ago (2013-08-15 23:45:10 UTC) #77
reveman
On 2013/08/15 23:30:23, Brian Anderson wrote: > https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc > File cc/trees/layer_tree_host_unittest.cc (right): > > https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc#newcode1494 ...
7 years, 4 months ago (2013-08-15 23:46:35 UTC) #78
enne (OOO)
https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc File cc/trees/layer_tree_host_unittest.cc (right): https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc#newcode721 cc/trees/layer_tree_host_unittest.cc:721: if (frame_count_with_pending_tree_ > 1) { On 2013/08/15 23:05:10, Brian ...
7 years, 4 months ago (2013-08-16 00:53:21 UTC) #79
brianderson
https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc File cc/trees/layer_tree_host_unittest.cc (right): https://codereview.chromium.org/16871016/diff/266001/cc/trees/layer_tree_host_unittest.cc#newcode1494 cc/trees/layer_tree_host_unittest.cc:1494: if (host_impl->active_tree()->source_frame_number() == 0) { On 2013/08/16 00:53:22, enne ...
7 years, 4 months ago (2013-08-16 01:20:47 UTC) #80
brianderson
> I don't really have more comments on this patch at this point (other than ...
7 years, 4 months ago (2013-08-16 02:26:15 UTC) #81
enne (OOO)
On 2013/08/16 02:26:15, Brian Anderson wrote: > Regarding the concern that sending the BeginFrame to ...
7 years, 4 months ago (2013-08-16 17:40:18 UTC) #82
brianderson
On 2013/08/16 17:40:18, enne wrote: > On 2013/08/16 02:26:15, Brian Anderson wrote: > > Regarding ...
7 years, 4 months ago (2013-08-16 18:49:20 UTC) #83
brianderson
A quick update on the state of this patch: I am attempting to break it ...
7 years, 4 months ago (2013-08-19 21:53:24 UTC) #84
danakj
Oh! okay, here's a couple tiny comments then. I'd love a primer on what this ...
7 years, 4 months ago (2013-08-19 21:54:39 UTC) #85
brianderson
On 2013/08/19 21:54:39, danakj wrote: > Oh! okay, here's a couple tiny comments then. > ...
7 years, 4 months ago (2013-08-20 01:50:53 UTC) #86
brianderson
Hopefully this is the last time I make this patch any bigger. https://codereview.chromium.org/16871016/diff/304002/cc/scheduler/scheduler.cc File cc/scheduler/scheduler.cc ...
7 years, 4 months ago (2013-08-20 02:02:58 UTC) #87
danakj
https://codereview.chromium.org/16871016/diff/304002/cc/scheduler/scheduler_state_machine.cc File cc/scheduler/scheduler_state_machine.cc (right): https://codereview.chromium.org/16871016/diff/304002/cc/scheduler/scheduler_state_machine.cc#newcode704 cc/scheduler/scheduler_state_machine.cc:704: // behavior of blocking the next commit until after ...
7 years, 4 months ago (2013-08-20 02:27:20 UTC) #88
brianderson
7 years, 3 months ago (2013-09-04 18:35:29 UTC) #89
Closing this issue since it has been broken up into multiple patches.  Remaining
patches not in ToT yet can be found here:

https://codereview.chromium.org/23503003/
https://codereview.chromium.org/23796002/

Powered by Google App Engine
This is Rietveld 408576698