summaryrefslogtreecommitdiffstats
path: root/cc
diff options
context:
space:
mode:
authorvollick <vollick@chromium.org>2016-02-29 19:27:58 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-01 03:29:25 +0000
commitdfc230bea226470b1cc87371ba27d2bcc0333144 (patch)
tree6c3f903b55289eb0e7111d7faa73ec804604e3e3 /cc
parentd151332e6b19119aff8ab7ef05b602ead73fb090 (diff)
downloadchromium_src-dfc230bea226470b1cc87371ba27d2bcc0333144.zip
chromium_src-dfc230bea226470b1cc87371ba27d2bcc0333144.tar.gz
chromium_src-dfc230bea226470b1cc87371ba27d2bcc0333144.tar.bz2
Revert checkerboarding image/no-image metrics.
This is currently providing no more value. Let's ditch it. This is a revert of https://codereview.chromium.org/1566813002 BUG=None CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1741183003 Cr-Commit-Position: refs/heads/master@{#378388}
Diffstat (limited to 'cc')
-rw-r--r--cc/base/rtree.cc20
-rw-r--r--cc/base/rtree.h6
-rw-r--r--cc/layers/append_quads_data.h3
-rw-r--r--cc/layers/picture_layer_impl.cc9
-rw-r--r--cc/layers/picture_layer_impl_unittest.cc70
-rw-r--r--cc/playback/discardable_image_map.cc5
-rw-r--r--cc/playback/discardable_image_map.h1
-rw-r--r--cc/playback/display_item_list.cc5
-rw-r--r--cc/playback/display_item_list.h2
-rw-r--r--cc/playback/display_list_raster_source.cc5
-rw-r--r--cc/playback/display_list_raster_source.h2
-rw-r--r--cc/test/fake_display_list_raster_source.cc32
-rw-r--r--cc/test/fake_display_list_raster_source.h3
-rw-r--r--cc/trees/layer_tree_host_impl.cc21
14 files changed, 0 insertions, 184 deletions
diff --git a/cc/base/rtree.cc b/cc/base/rtree.cc
index e0fdc0d..0b389f4 100644
--- a/cc/base/rtree.cc
+++ b/cc/base/rtree.cc
@@ -95,7 +95,6 @@ RTree::Branch RTree::BuildRecursive(std::vector<Branch>* branches, int level) {
void RTree::Search(const gfx::Rect& query, std::vector<size_t>* results) const {
if (num_data_elements_ > 0 && query.Intersects(root_.bounds))
SearchRecursive(root_.subtree, query, results);
- DCHECK(results->empty() || ContainsItemInRect(query));
}
void RTree::SearchRecursive(Node* node,
@@ -111,25 +110,6 @@ void RTree::SearchRecursive(Node* node,
}
}
-bool RTree::ContainsItemInRect(const gfx::Rect& query) const {
- if (num_data_elements_ == 0 || !query.Intersects(root_.bounds))
- return false;
- return ContainsItemInRectRecursive(root_.subtree, query);
-}
-
-bool RTree::ContainsItemInRectRecursive(Node* node,
- const gfx::Rect& query) const {
- for (uint16_t i = 0; i < node->num_children; ++i) {
- if (!query.Intersects(node->children[i].bounds))
- continue;
- if (node->level == 0 ||
- ContainsItemInRectRecursive(node->children[i].subtree, query)) {
- return true;
- }
- }
- return false;
-}
-
gfx::Rect RTree::GetBounds() const {
return root_.bounds;
}
diff --git a/cc/base/rtree.h b/cc/base/rtree.h
index 22f6443..21cd920 100644
--- a/cc/base/rtree.h
+++ b/cc/base/rtree.h
@@ -78,10 +78,6 @@ class CC_EXPORT RTree {
void Search(const gfx::Rect& query, std::vector<size_t>* results) const;
- // Equivalent, behaviorally, to checking if |Search| added anything to
- // |results|. This is faster, however.
- bool ContainsItemInRect(const gfx::Rect& query) const;
-
gfx::Rect GetBounds() const;
private:
@@ -112,8 +108,6 @@ class CC_EXPORT RTree {
const gfx::Rect& query,
std::vector<size_t>* results) const;
- bool ContainsItemInRectRecursive(Node* node, const gfx::Rect& query) const;
-
// Consumes the input array.
Branch BuildRecursive(std::vector<Branch>* branches, int level);
Node* AllocateNodeAtLevel(int level);
diff --git a/cc/layers/append_quads_data.h b/cc/layers/append_quads_data.h
index 0e2715b..831bf81 100644
--- a/cc/layers/append_quads_data.h
+++ b/cc/layers/append_quads_data.h
@@ -24,9 +24,6 @@ struct AppendQuadsData {
int64_t checkerboarded_no_recording_content_area = 0;
// This is the area within interest rect.
int64_t checkerboarded_needs_raster_content_area = 0;
-
- int64_t num_missing_tiles_no_image_content = 0;
- int64_t num_missing_tiles_some_image_content = 0;
};
} // namespace cc
diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
index 695f539..429a2be 100644
--- a/cc/layers/picture_layer_impl.cc
+++ b/cc/layers/picture_layer_impl.cc
@@ -14,7 +14,6 @@
#include "base/time/time.h"
#include "base/trace_event/trace_event_argument.h"
-#include "cc/base/histograms.h"
#include "cc/base/math_util.h"
#include "cc/debug/debug_colors.h"
#include "cc/debug/micro_benchmark_impl.h"
@@ -354,14 +353,6 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass,
if (geometry_rect.Intersects(scaled_viewport_for_tile_priority)) {
append_quads_data->num_missing_tiles++;
++missing_tile_count;
- // We only keep track of discardable images if we're using raster tasks,
- // so we only gather stats in this case.
- if (layer_tree_impl()->settings().image_decode_tasks_enabled) {
- if (raster_source_->HasDiscardableImageInRect(geometry_rect))
- append_quads_data->num_missing_tiles_some_image_content++;
- else
- append_quads_data->num_missing_tiles_no_image_content++;
- }
}
int64_t checkerboarded_area =
visible_geometry_rect.width() * visible_geometry_rect.height();
diff --git a/cc/layers/picture_layer_impl_unittest.cc b/cc/layers/picture_layer_impl_unittest.cc
index 04bac67..f132b3f 100644
--- a/cc/layers/picture_layer_impl_unittest.cc
+++ b/cc/layers/picture_layer_impl_unittest.cc
@@ -2058,76 +2058,6 @@ TEST_F(PictureLayerImplTest, AppendQuadsDataForCheckerboard) {
EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads());
}
-class ImageDecodeTasksSettings : public PictureLayerImplTestSettings {
- public:
- ImageDecodeTasksSettings() { image_decode_tasks_enabled = true; }
-};
-
-class ImageDecodeTasksTest : public PictureLayerImplTest {
- public:
- ImageDecodeTasksTest() : PictureLayerImplTest(ImageDecodeTasksSettings()) {}
-};
-
-TEST_F(ImageDecodeTasksTest, CheckerboardWithNoImageContent) {
- host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1));
-
- gfx::Size tile_size(100, 100);
- gfx::Size layer_bounds(200, 200);
- gfx::Rect recorded_viewport(0, 0, 150, 150);
-
- scoped_refptr<FakeDisplayListRasterSource> pending_raster_source =
- FakeDisplayListRasterSource::CreatePartiallyFilled(layer_bounds,
- recorded_viewport);
- SetupPendingTreeWithFixedTileSize(pending_raster_source, tile_size, Region());
- ActivateTree();
-
- scoped_ptr<RenderPass> render_pass = RenderPass::Create();
- AppendQuadsData data;
- active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
- active_layer_->AppendQuads(render_pass.get(), &data);
- active_layer_->DidDraw(nullptr);
-
- EXPECT_EQ(1u, render_pass->quad_list.size());
- EXPECT_EQ(1u, data.num_missing_tiles);
- EXPECT_EQ(0u, data.num_incomplete_tiles);
- EXPECT_EQ(1u, data.num_missing_tiles_no_image_content);
- EXPECT_EQ(0u, data.num_missing_tiles_some_image_content);
- EXPECT_EQ(40000, data.checkerboarded_visible_content_area);
- EXPECT_EQ(17500, data.checkerboarded_no_recording_content_area);
- EXPECT_EQ(22500, data.checkerboarded_needs_raster_content_area);
- EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads());
-}
-
-TEST_F(ImageDecodeTasksTest, CheckerboardWithSomeImageContent) {
- host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1));
-
- gfx::Size tile_size(100, 100);
- gfx::Size layer_bounds(200, 200);
- gfx::Rect recorded_viewport(0, 0, 150, 150);
-
- scoped_refptr<FakeDisplayListRasterSource> pending_raster_source =
- FakeDisplayListRasterSource::CreatePartiallyFilledWithImages(
- layer_bounds, recorded_viewport);
- SetupPendingTreeWithFixedTileSize(pending_raster_source, tile_size, Region());
- ActivateTree();
-
- scoped_ptr<RenderPass> render_pass = RenderPass::Create();
- AppendQuadsData data;
- active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
- active_layer_->AppendQuads(render_pass.get(), &data);
- active_layer_->DidDraw(nullptr);
-
- EXPECT_EQ(1u, render_pass->quad_list.size());
- EXPECT_EQ(1u, data.num_missing_tiles);
- EXPECT_EQ(0u, data.num_incomplete_tiles);
- EXPECT_EQ(0u, data.num_missing_tiles_no_image_content);
- EXPECT_EQ(1u, data.num_missing_tiles_some_image_content);
- EXPECT_EQ(40000, data.checkerboarded_visible_content_area);
- EXPECT_EQ(17500, data.checkerboarded_no_recording_content_area);
- EXPECT_EQ(22500, data.checkerboarded_needs_raster_content_area);
- EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads());
-}
-
TEST_F(PictureLayerImplTest, HighResRequiredWhenActiveAllReady) {
gfx::Size layer_bounds(400, 400);
gfx::Size tile_size(100, 100);
diff --git a/cc/playback/discardable_image_map.cc b/cc/playback/discardable_image_map.cc
index e24d03f..cb69bdf 100644
--- a/cc/playback/discardable_image_map.cc
+++ b/cc/playback/discardable_image_map.cc
@@ -198,11 +198,6 @@ void DiscardableImageMap::GetDiscardableImagesInRect(
images->push_back(all_images_[index].first.ApplyScale(raster_scale));
}
-bool DiscardableImageMap::HasDiscardableImageInRect(
- const gfx::Rect& rect) const {
- return images_rtree_.ContainsItemInRect(rect);
-}
-
DiscardableImageMap::ScopedMetadataGenerator::ScopedMetadataGenerator(
DiscardableImageMap* image_map,
const gfx::Size& bounds)
diff --git a/cc/playback/discardable_image_map.h b/cc/playback/discardable_image_map.h
index 87da7dc..90c9da2 100644
--- a/cc/playback/discardable_image_map.h
+++ b/cc/playback/discardable_image_map.h
@@ -53,7 +53,6 @@ class CC_EXPORT DiscardableImageMap {
void GetDiscardableImagesInRect(const gfx::Rect& rect,
float raster_scale,
std::vector<DrawImage>* images) const;
- bool HasDiscardableImageInRect(const gfx::Rect& rect) const;
private:
friend class ScopedMetadataGenerator;
diff --git a/cc/playback/display_item_list.cc b/cc/playback/display_item_list.cc
index 1a9178c..b88a65a 100644
--- a/cc/playback/display_item_list.cc
+++ b/cc/playback/display_item_list.cc
@@ -309,11 +309,6 @@ void DisplayItemList::GetDiscardableImagesInRect(
image_map_.GetDiscardableImagesInRect(rect, raster_scale, images);
}
-bool DisplayItemList::HasDiscardableImageInRect(
- const gfx::Rect& layer_rect) const {
- return image_map_.HasDiscardableImageInRect(layer_rect);
-}
-
bool DisplayItemList::MayHaveDiscardableImages() const {
return !image_map_.empty();
}
diff --git a/cc/playback/display_item_list.h b/cc/playback/display_item_list.h
index 3d432d4..9022fd1 100644
--- a/cc/playback/display_item_list.h
+++ b/cc/playback/display_item_list.h
@@ -109,8 +109,6 @@ class CC_EXPORT DisplayItemList
std::vector<DrawImage>* images);
bool MayHaveDiscardableImages() const;
- bool HasDiscardableImageInRect(const gfx::Rect& layer_rect) const;
-
gfx::Rect VisualRectForTesting(int index) { return visual_rects_[index]; }
private:
diff --git a/cc/playback/display_list_raster_source.cc b/cc/playback/display_list_raster_source.cc
index ea4c337..92d6902 100644
--- a/cc/playback/display_list_raster_source.cc
+++ b/cc/playback/display_list_raster_source.cc
@@ -459,11 +459,6 @@ void DisplayListRasterSource::GetDiscardableImagesInRect(
display_list_->GetDiscardableImagesInRect(layer_rect, raster_scale, images);
}
-bool DisplayListRasterSource::HasDiscardableImageInRect(
- const gfx::Rect& layer_rect) const {
- return display_list_ && display_list_->HasDiscardableImageInRect(layer_rect);
-}
-
bool DisplayListRasterSource::CoversRect(const gfx::Rect& layer_rect) const {
if (size_.IsEmpty())
return false;
diff --git a/cc/playback/display_list_raster_source.h b/cc/playback/display_list_raster_source.h
index 9b25b3a..5599f59a 100644
--- a/cc/playback/display_list_raster_source.h
+++ b/cc/playback/display_list_raster_source.h
@@ -80,8 +80,6 @@ class CC_EXPORT DisplayListRasterSource
float raster_scale,
std::vector<DrawImage>* images) const;
- bool HasDiscardableImageInRect(const gfx::Rect& layer_rect) const;
-
// Return true iff this raster source can raster the given rect in layer
// space.
bool CoversRect(const gfx::Rect& layer_rect) const;
diff --git a/cc/test/fake_display_list_raster_source.cc b/cc/test/fake_display_list_raster_source.cc
index 6c99e7d..163559b 100644
--- a/cc/test/fake_display_list_raster_source.cc
+++ b/cc/test/fake_display_list_raster_source.cc
@@ -8,9 +8,7 @@
#include "base/synchronization/waitable_event.h"
#include "cc/test/fake_display_list_recording_source.h"
-#include "cc/test/skia_common.h"
#include "testing/gtest/include/gtest/gtest.h"
-#include "third_party/skia/include/core/SkSurface.h"
#include "ui/gfx/geometry/size.h"
namespace cc {
@@ -107,36 +105,6 @@ FakeDisplayListRasterSource::CreatePartiallyFilled(
}
scoped_refptr<FakeDisplayListRasterSource>
-FakeDisplayListRasterSource::CreatePartiallyFilledWithImages(
- const gfx::Size& size,
- const gfx::Rect& recorded_viewport) {
- DCHECK(recorded_viewport.IsEmpty() ||
- gfx::Rect(size).Contains(recorded_viewport));
- auto recording_source = FakeDisplayListRecordingSource::CreateRecordingSource(
- recorded_viewport, size);
- recording_source->SetGenerateDiscardableImagesMetadata(true);
-
- SkPaint red_paint;
- red_paint.setColor(SK_ColorRED);
- recording_source->add_draw_rect_with_paint(gfx::Rect(size), red_paint);
-
- gfx::Size smaller_size(size.width() - 10, size.height() - 10);
- SkPaint green_paint;
- green_paint.setColor(SK_ColorGREEN);
- recording_source->add_draw_rect_with_paint(gfx::Rect(smaller_size),
- green_paint);
-
- skia::RefPtr<SkImage> image = CreateDiscardableImage(smaller_size);
- recording_source->add_draw_image(image.get(), gfx::Point());
-
- recording_source->Rerecord();
- recording_source->SetRecordedViewport(recorded_viewport);
-
- return make_scoped_refptr(
- new FakeDisplayListRasterSource(recording_source.get(), false));
-}
-
-scoped_refptr<FakeDisplayListRasterSource>
FakeDisplayListRasterSource::CreateEmpty(const gfx::Size& size) {
auto recording_source =
FakeDisplayListRecordingSource::CreateFilledRecordingSource(size);
diff --git a/cc/test/fake_display_list_raster_source.h b/cc/test/fake_display_list_raster_source.h
index 3bff562..8936fbe 100644
--- a/cc/test/fake_display_list_raster_source.h
+++ b/cc/test/fake_display_list_raster_source.h
@@ -27,9 +27,6 @@ class FakeDisplayListRasterSource : public DisplayListRasterSource {
static scoped_refptr<FakeDisplayListRasterSource> CreatePartiallyFilled(
const gfx::Size& size,
const gfx::Rect& recorded_viewport);
- static scoped_refptr<FakeDisplayListRasterSource>
- CreatePartiallyFilledWithImages(const gfx::Size& size,
- const gfx::Rect& recorded_viewport);
static scoped_refptr<FakeDisplayListRasterSource> CreateEmpty(
const gfx::Size& size);
static scoped_refptr<FakeDisplayListRasterSource> CreateFromRecordingSource(
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index 9443c9a..6a9fee0 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -858,8 +858,6 @@ DrawResult LayerTreeHostImpl::CalculateRenderPasses(
const DrawMode draw_mode = GetDrawMode();
int num_missing_tiles = 0;
- int num_missing_tiles_no_image_content = 0;
- int num_missing_tiles_some_image_content = 0;
int num_incomplete_tiles = 0;
int64_t checkerboarded_no_recording_content_area = 0;
int64_t checkerboarded_needs_raster_content_area = 0;
@@ -930,10 +928,6 @@ DrawResult LayerTreeHostImpl::CalculateRenderPasses(
append_quads_data.checkerboarded_needs_raster_content_area);
num_missing_tiles += append_quads_data.num_missing_tiles;
- num_missing_tiles_no_image_content +=
- append_quads_data.num_missing_tiles_no_image_content;
- num_missing_tiles_some_image_content +=
- append_quads_data.num_missing_tiles_some_image_content;
num_incomplete_tiles += append_quads_data.num_incomplete_tiles;
checkerboarded_no_recording_content_area +=
append_quads_data.checkerboarded_no_recording_content_area;
@@ -1018,21 +1012,6 @@ DrawResult LayerTreeHostImpl::CalculateRenderPasses(
"Compositing.RenderPass.AppendQuadData."
"CheckerboardedNeedRasterContentArea",
checkerboarded_needs_raster_content_area);
-
- if (settings_.image_decode_tasks_enabled && num_missing_tiles) {
- if (const char* client_name = GetClientNameForMetrics()) {
- UMA_HISTOGRAM_COUNTS_100(
- base::StringPrintf("Compositing.%s.RenderPass.AppendQuadData."
- "NumMissingTilesSomeImageContent",
- client_name),
- num_missing_tiles_some_image_content);
- UMA_HISTOGRAM_COUNTS_100(
- base::StringPrintf("Compositing.%s.RenderPass.AppendQuadData."
- "NumMissingTilesNoImageContent",
- client_name),
- num_missing_tiles_no_image_content);
- }
- }
}
// Should only have one render pass in resourceless software mode.