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

Side by Side Diff: cc/debug/rasterize_and_record_benchmark_impl.cc

Issue 812543002: Update from https://crrev.com/308331 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/cc_tests.gyp ('k') | cc/layers/layer_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/debug/rasterize_and_record_benchmark_impl.h" 5 #include "cc/debug/rasterize_and_record_benchmark_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/values.h" 11 #include "base/values.h"
12 #include "cc/debug/lap_timer.h" 12 #include "cc/debug/lap_timer.h"
13 #include "cc/layers/layer_impl.h" 13 #include "cc/layers/layer_impl.h"
14 #include "cc/layers/picture_layer_impl.h" 14 #include "cc/layers/picture_layer_impl.h"
15 #include "cc/resources/tile_task_worker_pool.h" 15 #include "cc/resources/tile_task_worker_pool.h"
16 #include "cc/trees/layer_tree_host_common.h" 16 #include "cc/trees/layer_tree_host_common.h"
17 #include "cc/trees/layer_tree_host_impl.h" 17 #include "cc/trees/layer_tree_host_impl.h"
18 #include "cc/trees/layer_tree_impl.h"
18 #include "ui/gfx/geometry/rect.h" 19 #include "ui/gfx/geometry/rect.h"
19 20
20 namespace cc { 21 namespace cc {
21 22
22 namespace { 23 namespace {
23 24
24 const int kDefaultRasterizeRepeatCount = 100; 25 const int kDefaultRasterizeRepeatCount = 100;
25 26
26 class BenchmarkRasterTask : public Task { 27 class BenchmarkRasterTask : public Task {
27 public: 28 public:
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 115
115 PictureLayerTiling* GetRecycledTwinTiling( 116 PictureLayerTiling* GetRecycledTwinTiling(
116 const PictureLayerTiling* tiling) override { 117 const PictureLayerTiling* tiling) override {
117 return base_client_->GetRecycledTwinTiling(tiling); 118 return base_client_->GetRecycledTwinTiling(tiling);
118 } 119 }
119 120
120 TilePriority::PriorityBin GetMaxTilePriorityBin() const override { 121 TilePriority::PriorityBin GetMaxTilePriorityBin() const override {
121 return base_client_->GetMaxTilePriorityBin(); 122 return base_client_->GetMaxTilePriorityBin();
122 } 123 }
123 124
124 size_t GetMaxTilesForInterestArea() const override {
125 return base_client_->GetMaxTilesForInterestArea();
126 }
127
128 float GetSkewportTargetTimeInSeconds() const override {
129 return base_client_->GetSkewportTargetTimeInSeconds();
130 }
131
132 int GetSkewportExtrapolationLimitInContentPixels() const override {
133 return base_client_->GetSkewportExtrapolationLimitInContentPixels();
134 }
135
136 WhichTree GetTree() const override { return base_client_->GetTree(); } 125 WhichTree GetTree() const override { return base_client_->GetTree(); }
137 126
138 bool RequiresHighResToDraw() const override { 127 bool RequiresHighResToDraw() const override {
139 return base_client_->RequiresHighResToDraw(); 128 return base_client_->RequiresHighResToDraw();
140 } 129 }
141 130
142 private: 131 private:
143 PictureLayerTilingClient* base_client_; 132 PictureLayerTilingClient* base_client_;
144 Region invalidation_; 133 Region invalidation_;
145 }; 134 };
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 } 197 }
209 198
210 TaskGraphRunner* task_graph_runner = TileTaskWorkerPool::GetTaskGraphRunner(); 199 TaskGraphRunner* task_graph_runner = TileTaskWorkerPool::GetTaskGraphRunner();
211 DCHECK(task_graph_runner); 200 DCHECK(task_graph_runner);
212 201
213 if (!task_namespace_.IsValid()) 202 if (!task_namespace_.IsValid())
214 task_namespace_ = task_graph_runner->GetNamespaceToken(); 203 task_namespace_ = task_graph_runner->GetNamespaceToken();
215 204
216 FixedInvalidationPictureLayerTilingClient client( 205 FixedInvalidationPictureLayerTilingClient client(
217 layer, gfx::Rect(layer->content_bounds())); 206 layer, gfx::Rect(layer->content_bounds()));
218 auto tiling_set = PictureLayerTilingSet::Create(&client); 207
208 // In this benchmark, we will create a local tiling set and measure how long
209 // it takes to rasterize content. As such, the actual settings used here don't
210 // really matter.
211 const LayerTreeSettings& settings = layer->layer_tree_impl()->settings();
212 auto tiling_set = PictureLayerTilingSet::Create(
213 &client, settings.max_tiles_for_interest_area,
214 settings.skewport_target_time_in_seconds,
215 settings.skewport_extrapolation_limit_in_content_pixels);
219 216
220 PictureLayerTiling* tiling = 217 PictureLayerTiling* tiling =
221 tiling_set->AddTiling(layer->contents_scale_x(), layer->bounds()); 218 tiling_set->AddTiling(layer->contents_scale_x(), layer->bounds());
222 tiling->CreateAllTilesForTesting(); 219 tiling->CreateAllTilesForTesting();
223 for (PictureLayerTiling::CoverageIterator it( 220 for (PictureLayerTiling::CoverageIterator it(
224 tiling, layer->contents_scale_x(), layer->visible_content_rect()); 221 tiling, layer->contents_scale_x(), layer->visible_content_rect());
225 it; 222 it;
226 ++it) { 223 ++it) {
227 DCHECK(*it); 224 DCHECK(*it);
228 225
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 total_memory_usage(0), 274 total_memory_usage(0),
278 total_layers(0), 275 total_layers(0),
279 total_picture_layers(0), 276 total_picture_layers(0),
280 total_picture_layers_with_no_content(0), 277 total_picture_layers_with_no_content(0),
281 total_picture_layers_off_screen(0) { 278 total_picture_layers_off_screen(0) {
282 } 279 }
283 280
284 RasterizeAndRecordBenchmarkImpl::RasterizeResults::~RasterizeResults() {} 281 RasterizeAndRecordBenchmarkImpl::RasterizeResults::~RasterizeResults() {}
285 282
286 } // namespace cc 283 } // namespace cc
OLDNEW
« no previous file with comments | « cc/cc_tests.gyp ('k') | cc/layers/layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698