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

Issue 11028021: cc: Improve frame/commit accounting (Closed)

Created:
8 years, 2 months ago by brianderson
Modified:
6 years, 9 months ago
Reviewers:
dtu, reveman
CC:
chromium-reviews, darin-cc_chromium.org, cc-bugs_chromium.org, pam+watch_chromium.org, apatrick_chromium, dtu, egraether_google.com
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

Makes CCFrameCounter vsync aware to more accurately account for dropped frames. Adds the following counters: vsyncCount: The maximum number of times the compositor could have synced. implAnimationFrameCount: The number impl-side animation frames. Uses int64_t instead of size_t or int. Fixes dropped_percentage calculation. Adds commit_efficiency calculation. BUG=138641 BUG=138642 BUG=151456

Patch Set 1 #

Total comments: 4

Patch Set 2 : Use uint64_t and rename variables to *Count #

Total comments: 4

Patch Set 3 : Use int64_t. Remove unnecessary return. #

Patch Set 4 : Make it work in single tread mode. Get rid of active concept. #

Total comments: 6

Patch Set 5 : Address comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+124 lines, -67 lines) Patch
M cc/frame_rate_controller.cc View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M cc/frame_rate_counter.h View 1 2 3 4 4 chunks +18 lines, -15 lines 0 comments Download
M cc/frame_rate_counter.cc View 1 2 3 4 7 chunks +38 lines, -11 lines 0 comments Download
M cc/layer_tree_host.cc View 1 2 3 3 chunks +2 lines, -3 lines 0 comments Download
M cc/layer_tree_host_impl.h View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M cc/layer_tree_host_impl.cc View 1 2 3 4 6 chunks +11 lines, -9 lines 0 comments Download
M cc/rendering_stats.h View 1 2 3 1 chunk +14 lines, -11 lines 0 comments Download
M cc/single_thread_proxy.h View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M cc/single_thread_proxy.cc View 1 2 3 4 3 chunks +10 lines, -0 lines 0 comments Download
M cc/thread_proxy.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M cc/thread_proxy.cc View 1 2 3 4 3 chunks +3 lines, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M tools/perf/perf_tools/scrolling_benchmark.py View 1 2 3 4 3 chunks +3 lines, -3 lines 0 comments Download
M tools/perf/perf_tools/scrolling_benchmark_unittest.py View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M tools/perf/perf_tools/texture_upload_benchmark.py View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
M webkit/compositor_bindings/WebLayerTreeViewImpl.cpp View 1 2 3 1 chunk +6 lines, -4 lines 0 comments Download

Messages

Total messages: 13 (0 generated)
brianderson
Here are some more metrics to help us measure texture upload performance improvements.
8 years, 2 months ago (2012-10-04 01:16:32 UTC) #1
dtu
https://codereview.chromium.org/11028021/diff/1/cc/CCRenderingStats.h File cc/CCRenderingStats.h (right): https://codereview.chromium.org/11028021/diff/1/cc/CCRenderingStats.h#newcode16 cc/CCRenderingStats.h:16: size_t numAnimationFramesImpl; Can we use thingCount instead of numThings? ...
8 years, 2 months ago (2012-10-04 01:51:36 UTC) #2
reveman
https://codereview.chromium.org/11028021/diff/1/cc/CCFrameRateController.cpp File cc/CCFrameRateController.cpp (right): https://codereview.chromium.org/11028021/diff/1/cc/CCFrameRateController.cpp#newcode216 cc/CCFrameRateController.cpp:216: return; nit: unnecessary return statement
8 years, 2 months ago (2012-10-04 02:15:56 UTC) #3
brianderson
https://codereview.chromium.org/11028021/diff/1/cc/CCFrameRateController.cpp File cc/CCFrameRateController.cpp (right): https://codereview.chromium.org/11028021/diff/1/cc/CCFrameRateController.cpp#newcode216 cc/CCFrameRateController.cpp:216: return; On 2012/10/04 02:15:56, David Reveman wrote: > nit: ...
8 years, 2 months ago (2012-10-04 20:11:59 UTC) #4
dtu
lgtm with nits https://chromiumcodereview.appspot.com/11028021/diff/4002/cc/CCFrameRateController.cpp File cc/CCFrameRateController.cpp (right): https://chromiumcodereview.appspot.com/11028021/diff/4002/cc/CCFrameRateController.cpp#newcode216 cc/CCFrameRateController.cpp:216: return; nit: the return is still ...
8 years, 2 months ago (2012-10-04 21:41:09 UTC) #5
nduca
Can you explain csync and what it means a bit? I'm not sure I grok.
8 years, 2 months ago (2012-10-05 00:02:39 UTC) #6
brianderson
I renamed cSync to compositorSync to make it more explicit. compositorSync is a vsyncTick in ...
8 years, 2 months ago (2012-10-05 00:17:32 UTC) #7
brianderson
Dave, David, can you guys take another look at this patch? I moved the accounting ...
8 years, 2 months ago (2012-10-17 01:48:18 UTC) #8
reveman
https://codereview.chromium.org/11028021/diff/15001/cc/frame_rate_counter.cc File cc/frame_rate_counter.cc (right): https://codereview.chromium.org/11028021/diff/15001/cc/frame_rate_counter.cc#newcode57 cc/frame_rate_counter.cc:57: base::TimeTicks(), base::TimeDelta::FromMicroseconds(base::Time::kMicrosecondsPerSecond / 60)); this assumes that 60FPS is ...
8 years, 2 months ago (2012-10-17 19:32:30 UTC) #9
brianderson
https://codereview.chromium.org/11028021/diff/15001/cc/frame_rate_counter.cc File cc/frame_rate_counter.cc (right): https://codereview.chromium.org/11028021/diff/15001/cc/frame_rate_counter.cc#newcode57 cc/frame_rate_counter.cc:57: base::TimeTicks(), base::TimeDelta::FromMicroseconds(base::Time::kMicrosecondsPerSecond / 60)); On 2012/10/17 19:32:30, David Reveman ...
8 years, 2 months ago (2012-10-17 22:34:48 UTC) #10
reveman
lgtm
8 years, 2 months ago (2012-10-18 00:03:00 UTC) #11
dtu
lgtm
8 years, 2 months ago (2012-10-18 01:46:30 UTC) #12
reveman
6 years, 9 months ago (2014-03-24 18:43:02 UTC) #13
can this be closed?

Powered by Google App Engine
This is Rietveld 408576698