summaryrefslogtreecommitdiffstats
path: root/cc/debug
diff options
context:
space:
mode:
authorweiliangc <weiliangc@chromium.org>2015-10-05 13:23:49 -0700
committerCommit bot <commit-bot@chromium.org>2015-10-05 20:24:32 +0000
commitee31fcdc94807bc20cdf2363da60d61d586f0770 (patch)
treeaa9f4667e73b47785f1c31030ebfacb633eee19d /cc/debug
parentc24b5f2afd1e7b1fec2c733a879969a648775569 (diff)
downloadchromium_src-ee31fcdc94807bc20cdf2363da60d61d586f0770.zip
chromium_src-ee31fcdc94807bc20cdf2363da60d61d586f0770.tar.gz
chromium_src-ee31fcdc94807bc20cdf2363da60d61d586f0770.tar.bz2
UMA and Telemetry for separate checkerboarded area has recording or not
Adds UMA and Telemetry support for counting checkerboarded area in pixels, and separate checkerboarded content area that has recording and checkerboarded content area that does not have recording. BUG=535732 R=enne CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1377583004 Cr-Commit-Position: refs/heads/master@{#352407}
Diffstat (limited to 'cc/debug')
-rw-r--r--cc/debug/rendering_stats.cc13
-rw-r--r--cc/debug/rendering_stats.h2
-rw-r--r--cc/debug/rendering_stats_instrumentation.cc18
-rw-r--r--cc/debug/rendering_stats_instrumentation.h2
4 files changed, 33 insertions, 2 deletions
diff --git a/cc/debug/rendering_stats.cc b/cc/debug/rendering_stats.cc
index 582c763..a3d7a43 100644
--- a/cc/debug/rendering_stats.cc
+++ b/cc/debug/rendering_stats.cc
@@ -38,8 +38,9 @@ RenderingStats::RenderingStats()
: frame_count(0),
visible_content_area(0),
approximated_visible_content_area(0),
- checkerboarded_visible_content_area(0) {
-}
+ checkerboarded_visible_content_area(0),
+ checkerboarded_no_recording_content_area(0),
+ checkerboarded_needs_raster_content_area(0) {}
RenderingStats::~RenderingStats() {
}
@@ -54,6 +55,10 @@ RenderingStats::AsTraceableData() const {
approximated_visible_content_area);
record_data->SetInteger("checkerboarded_visible_content_area",
checkerboarded_visible_content_area);
+ record_data->SetInteger("checkerboarded_no_recording_content_area",
+ checkerboarded_no_recording_content_area);
+ record_data->SetInteger("checkerboarded_needs_raster_content_area",
+ checkerboarded_needs_raster_content_area);
draw_duration.AddToTracedValue("draw_duration_ms", record_data.get());
draw_duration_estimate.AddToTracedValue("draw_duration_estimate_ms",
@@ -79,6 +84,10 @@ void RenderingStats::Add(const RenderingStats& other) {
approximated_visible_content_area += other.approximated_visible_content_area;
checkerboarded_visible_content_area +=
other.checkerboarded_visible_content_area;
+ checkerboarded_no_recording_content_area +=
+ other.checkerboarded_no_recording_content_area;
+ checkerboarded_needs_raster_content_area +=
+ other.checkerboarded_needs_raster_content_area;
draw_duration.Add(other.draw_duration);
draw_duration_estimate.Add(other.draw_duration_estimate);
diff --git a/cc/debug/rendering_stats.h b/cc/debug/rendering_stats.h
index cb7ebb2c..fbe0d63 100644
--- a/cc/debug/rendering_stats.h
+++ b/cc/debug/rendering_stats.h
@@ -45,6 +45,8 @@ struct CC_EXPORT RenderingStats {
int64 visible_content_area;
int64 approximated_visible_content_area;
int64 checkerboarded_visible_content_area;
+ int64 checkerboarded_no_recording_content_area;
+ int64 checkerboarded_needs_raster_content_area;
TimeDeltaList draw_duration;
TimeDeltaList draw_duration_estimate;
diff --git a/cc/debug/rendering_stats_instrumentation.cc b/cc/debug/rendering_stats_instrumentation.cc
index 315743b..e793c50 100644
--- a/cc/debug/rendering_stats_instrumentation.cc
+++ b/cc/debug/rendering_stats_instrumentation.cc
@@ -90,6 +90,24 @@ void RenderingStatsInstrumentation::AddCheckerboardedVisibleContentArea(
impl_thread_rendering_stats_.checkerboarded_visible_content_area += area;
}
+void RenderingStatsInstrumentation::AddCheckerboardedNoRecordingContentArea(
+ int64 area) {
+ if (!record_rendering_stats_)
+ return;
+
+ base::AutoLock scoped_lock(lock_);
+ impl_thread_rendering_stats_.checkerboarded_no_recording_content_area += area;
+}
+
+void RenderingStatsInstrumentation::AddCheckerboardedNeedsRasterContentArea(
+ int64 area) {
+ if (!record_rendering_stats_)
+ return;
+
+ base::AutoLock scoped_lock(lock_);
+ impl_thread_rendering_stats_.checkerboarded_needs_raster_content_area += area;
+}
+
void RenderingStatsInstrumentation::AddDrawDuration(
base::TimeDelta draw_duration,
base::TimeDelta draw_duration_estimate) {
diff --git a/cc/debug/rendering_stats_instrumentation.h b/cc/debug/rendering_stats_instrumentation.h
index 4779688..92351e6 100644
--- a/cc/debug/rendering_stats_instrumentation.h
+++ b/cc/debug/rendering_stats_instrumentation.h
@@ -44,6 +44,8 @@ class CC_EXPORT RenderingStatsInstrumentation {
void AddVisibleContentArea(int64 area);
void AddApproximatedVisibleContentArea(int64 area);
void AddCheckerboardedVisibleContentArea(int64 area);
+ void AddCheckerboardedNoRecordingContentArea(int64 area);
+ void AddCheckerboardedNeedsRasterContentArea(int64 area);
void AddDrawDuration(base::TimeDelta draw_duration,
base::TimeDelta draw_duration_estimate);
void AddBeginMainFrameToCommitDuration(