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

Side by Side Diff: cc/tile_manager.cc

Issue 12209022: cc: add rasterize time to continuous painting graph data in impl-side-painting (Closed) Base URL: http://git.chromium.org/chromium/src.git@raster
Patch Set: Created 7 years, 10 months 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
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/tile_manager.h" 5 #include "cc/tile_manager.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 } 107 }
108 108
109 ManagedTileState::~ManagedTileState() { 109 ManagedTileState::~ManagedTileState() {
110 DCHECK(!resource); 110 DCHECK(!resource);
111 DCHECK(!resource_is_being_initialized); 111 DCHECK(!resource_is_being_initialized);
112 } 112 }
113 113
114 TileManager::TileManager( 114 TileManager::TileManager(
115 TileManagerClient* client, 115 TileManagerClient* client,
116 ResourceProvider* resource_provider, 116 ResourceProvider* resource_provider,
117 size_t num_raster_threads, 117 size_t num_raster_threads)
118 bool record_rendering_stats)
119 : client_(client), 118 : client_(client),
120 resource_pool_(ResourcePool::Create(resource_provider)), 119 resource_pool_(ResourcePool::Create(resource_provider)),
121 raster_worker_pool_(RasterWorkerPool::Create(num_raster_threads, record_re ndering_stats)), 120 raster_worker_pool_(RasterWorkerPool::Create(num_raster_threads)),
122 manage_tiles_pending_(false), 121 manage_tiles_pending_(false),
123 manage_tiles_call_count_(0), 122 manage_tiles_call_count_(0),
124 bytes_pending_set_pixels_(0), 123 bytes_pending_set_pixels_(0),
125 ever_exceeded_memory_budget_(false), 124 ever_exceeded_memory_budget_(false),
126 record_rendering_stats_(record_rendering_stats) { 125 record_rendering_stats_(false) {
127 for (int i = 0; i < NUM_STATES; ++i) { 126 for (int i = 0; i < NUM_STATES; ++i) {
128 for (int j = 0; j < NUM_TREES; ++j) { 127 for (int j = 0; j < NUM_TREES; ++j) {
129 for (int k = 0; k < NUM_BINS; ++k) 128 for (int k = 0; k < NUM_BINS; ++k)
130 raster_state_count_[i][j][k] = 0; 129 raster_state_count_[i][j][k] = 0;
131 } 130 }
132 } 131 }
133 } 132 }
134 133
135 TileManager::~TileManager() { 134 TileManager::~TileManager() {
136 // Reset global state and manage. This should cause 135 // Reset global state and manage. This should cause
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 size_t memoryUsedBytes; 377 size_t memoryUsedBytes;
379 GetMemoryStats(&memoryRequiredBytes, 378 GetMemoryStats(&memoryRequiredBytes,
380 &memoryNiceToHaveBytes, 379 &memoryNiceToHaveBytes,
381 &memoryUsedBytes); 380 &memoryUsedBytes);
382 requirements->SetInteger("memory_required_bytes", memoryRequiredBytes); 381 requirements->SetInteger("memory_required_bytes", memoryRequiredBytes);
383 requirements->SetInteger("memory_nice_to_have_bytes", memoryNiceToHaveBytes); 382 requirements->SetInteger("memory_nice_to_have_bytes", memoryNiceToHaveBytes);
384 requirements->SetInteger("memory_used_bytes", memoryUsedBytes); 383 requirements->SetInteger("memory_used_bytes", memoryUsedBytes);
385 return requirements.PassAs<base::Value>(); 384 return requirements.PassAs<base::Value>();
386 } 385 }
387 386
387 void TileManager::SetRecordRenderingStats(bool record_rendering_stats) {
388 if (record_rendering_stats_ == record_rendering_stats)
389 return;
390
391 record_rendering_stats_ = record_rendering_stats;
392 raster_worker_pool_->SetRecordRenderingStats(record_rendering_stats);
393 }
394
388 void TileManager::GetRenderingStats(RenderingStats* stats) { 395 void TileManager::GetRenderingStats(RenderingStats* stats) {
389 CHECK(record_rendering_stats_); 396 CHECK(record_rendering_stats_);
390 raster_worker_pool_->GetRenderingStats(stats); 397 raster_worker_pool_->GetRenderingStats(stats);
391 stats->totalDeferredImageCacheHitCount = 398 stats->totalDeferredImageCacheHitCount =
392 rendering_stats_.totalDeferredImageCacheHitCount; 399 rendering_stats_.totalDeferredImageCacheHitCount;
393 stats->totalImageGatheringCount = rendering_stats_.totalImageGatheringCount; 400 stats->totalImageGatheringCount = rendering_stats_.totalImageGatheringCount;
394 stats->totalImageGatheringTime = 401 stats->totalImageGatheringTime =
395 rendering_stats_.totalImageGatheringTime; 402 rendering_stats_.totalImageGatheringTime;
396 } 403 }
397 404
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 decode_begin_time = base::TimeTicks::Now(); 781 decode_begin_time = base::TimeTicks::Now();
775 pixel_ref->Decode(); 782 pixel_ref->Decode();
776 if (stats) { 783 if (stats) {
777 stats->totalDeferredImageDecodeCount++; 784 stats->totalDeferredImageDecodeCount++;
778 stats->totalDeferredImageDecodeTime += 785 stats->totalDeferredImageDecodeTime +=
779 base::TimeTicks::Now() - decode_begin_time; 786 base::TimeTicks::Now() - decode_begin_time;
780 } 787 }
781 } 788 }
782 789
783 } // namespace cc 790 } // namespace cc
OLDNEW
« cc/layer_tree_host_impl.cc ('K') | « cc/tile_manager.h ('k') | cc/worker_pool.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698