diff options
author | weiliangc <weiliangc@chromium.org> | 2015-10-05 13:23:49 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-05 20:24:32 +0000 |
commit | ee31fcdc94807bc20cdf2363da60d61d586f0770 (patch) | |
tree | aa9f4667e73b47785f1c31030ebfacb633eee19d /cc/debug | |
parent | c24b5f2afd1e7b1fec2c733a879969a648775569 (diff) | |
download | chromium_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.cc | 13 | ||||
-rw-r--r-- | cc/debug/rendering_stats.h | 2 | ||||
-rw-r--r-- | cc/debug/rendering_stats_instrumentation.cc | 18 | ||||
-rw-r--r-- | cc/debug/rendering_stats_instrumentation.h | 2 |
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( |