Commit 73a470e3 authored by cblume's avatar cblume Committed by Commit bot

Adding a metric to track only the checkerboarding.

BUG=466867

Review URL: https://codereview.chromium.org/1010323002

Cr-Commit-Position: refs/heads/master@{#322396}
parent c34049f1
...@@ -37,7 +37,8 @@ base::TimeDelta RenderingStats::TimeDeltaList::GetLastTimeDelta() const { ...@@ -37,7 +37,8 @@ base::TimeDelta RenderingStats::TimeDeltaList::GetLastTimeDelta() const {
RenderingStats::RenderingStats() RenderingStats::RenderingStats()
: frame_count(0), : frame_count(0),
visible_content_area(0), visible_content_area(0),
approximated_visible_content_area(0) { approximated_visible_content_area(0),
checkerboarded_visible_content_area(0) {
} }
RenderingStats::~RenderingStats() { RenderingStats::~RenderingStats() {
...@@ -51,6 +52,8 @@ RenderingStats::AsTraceableData() const { ...@@ -51,6 +52,8 @@ RenderingStats::AsTraceableData() const {
record_data->SetInteger("visible_content_area", visible_content_area); record_data->SetInteger("visible_content_area", visible_content_area);
record_data->SetInteger("approximated_visible_content_area", record_data->SetInteger("approximated_visible_content_area",
approximated_visible_content_area); approximated_visible_content_area);
record_data->SetInteger("checkerboarded_visible_content_area",
checkerboarded_visible_content_area);
draw_duration.AddToTracedValue("draw_duration_ms", record_data.get()); draw_duration.AddToTracedValue("draw_duration_ms", record_data.get());
draw_duration_estimate.AddToTracedValue("draw_duration_estimate_ms", draw_duration_estimate.AddToTracedValue("draw_duration_estimate_ms",
...@@ -74,6 +77,8 @@ void RenderingStats::Add(const RenderingStats& other) { ...@@ -74,6 +77,8 @@ void RenderingStats::Add(const RenderingStats& other) {
frame_count += other.frame_count; frame_count += other.frame_count;
visible_content_area += other.visible_content_area; visible_content_area += other.visible_content_area;
approximated_visible_content_area += other.approximated_visible_content_area; approximated_visible_content_area += other.approximated_visible_content_area;
checkerboarded_visible_content_area +=
other.checkerboarded_visible_content_area;
draw_duration.Add(other.draw_duration); draw_duration.Add(other.draw_duration);
draw_duration_estimate.Add(other.draw_duration_estimate); draw_duration_estimate.Add(other.draw_duration_estimate);
......
...@@ -44,6 +44,7 @@ struct CC_EXPORT RenderingStats { ...@@ -44,6 +44,7 @@ struct CC_EXPORT RenderingStats {
int64 frame_count; int64 frame_count;
int64 visible_content_area; int64 visible_content_area;
int64 approximated_visible_content_area; int64 approximated_visible_content_area;
int64 checkerboarded_visible_content_area;
TimeDeltaList draw_duration; TimeDeltaList draw_duration;
TimeDeltaList draw_duration_estimate; TimeDeltaList draw_duration_estimate;
......
...@@ -81,6 +81,15 @@ void RenderingStatsInstrumentation::AddApproximatedVisibleContentArea( ...@@ -81,6 +81,15 @@ void RenderingStatsInstrumentation::AddApproximatedVisibleContentArea(
impl_thread_rendering_stats_.approximated_visible_content_area += area; impl_thread_rendering_stats_.approximated_visible_content_area += area;
} }
void RenderingStatsInstrumentation::AddCheckerboardedVisibleContentArea(
int64 area) {
if (!record_rendering_stats_)
return;
base::AutoLock scoped_lock(lock_);
impl_thread_rendering_stats_.checkerboarded_visible_content_area += area;
}
void RenderingStatsInstrumentation::AddDrawDuration( void RenderingStatsInstrumentation::AddDrawDuration(
base::TimeDelta draw_duration, base::TimeDelta draw_duration,
base::TimeDelta draw_duration_estimate) { base::TimeDelta draw_duration_estimate) {
......
...@@ -43,6 +43,7 @@ class CC_EXPORT RenderingStatsInstrumentation { ...@@ -43,6 +43,7 @@ class CC_EXPORT RenderingStatsInstrumentation {
void IncrementFrameCount(int64 count); void IncrementFrameCount(int64 count);
void AddVisibleContentArea(int64 area); void AddVisibleContentArea(int64 area);
void AddApproximatedVisibleContentArea(int64 area); void AddApproximatedVisibleContentArea(int64 area);
void AddCheckerboardedVisibleContentArea(int64 area);
void AddDrawDuration(base::TimeDelta draw_duration, void AddDrawDuration(base::TimeDelta draw_duration,
base::TimeDelta draw_duration_estimate); base::TimeDelta draw_duration_estimate);
void AddBeginMainFrameToCommitDuration( void AddBeginMainFrameToCommitDuration(
......
...@@ -15,7 +15,8 @@ struct AppendQuadsData { ...@@ -15,7 +15,8 @@ struct AppendQuadsData {
: num_incomplete_tiles(0), : num_incomplete_tiles(0),
num_missing_tiles(0), num_missing_tiles(0),
visible_content_area(0), visible_content_area(0),
approximated_visible_content_area(0) {} approximated_visible_content_area(0),
checkerboarded_visible_content_area(0) {}
// Set by the layer appending quads. // Set by the layer appending quads.
int64 num_incomplete_tiles; int64 num_incomplete_tiles;
...@@ -25,6 +26,8 @@ struct AppendQuadsData { ...@@ -25,6 +26,8 @@ struct AppendQuadsData {
int64 visible_content_area; int64 visible_content_area;
// Set by the layer appending quads. // Set by the layer appending quads.
int64 approximated_visible_content_area; int64 approximated_visible_content_area;
// Set by the layer appending quads.
int64 checkerboarded_visible_content_area;
}; };
} // namespace cc } // namespace cc
......
...@@ -351,6 +351,8 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass, ...@@ -351,6 +351,8 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass,
} }
append_quads_data->approximated_visible_content_area += append_quads_data->approximated_visible_content_area +=
visible_geometry_rect.width() * visible_geometry_rect.height(); visible_geometry_rect.width() * visible_geometry_rect.height();
append_quads_data->checkerboarded_visible_content_area +=
visible_geometry_rect.width() * visible_geometry_rect.height();
continue; continue;
} }
......
...@@ -844,6 +844,8 @@ DrawResult LayerTreeHostImpl::CalculateRenderPasses( ...@@ -844,6 +844,8 @@ DrawResult LayerTreeHostImpl::CalculateRenderPasses(
append_quads_data.visible_content_area); append_quads_data.visible_content_area);
rendering_stats_instrumentation_->AddApproximatedVisibleContentArea( rendering_stats_instrumentation_->AddApproximatedVisibleContentArea(
append_quads_data.approximated_visible_content_area); append_quads_data.approximated_visible_content_area);
rendering_stats_instrumentation_->AddCheckerboardedVisibleContentArea(
append_quads_data.checkerboarded_visible_content_area);
num_missing_tiles += append_quads_data.num_missing_tiles; num_missing_tiles += append_quads_data.num_missing_tiles;
num_incomplete_tiles += append_quads_data.num_incomplete_tiles; num_incomplete_tiles += append_quads_data.num_incomplete_tiles;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment