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

Side by Side Diff: cc/resources/raster_worker_pool_perftest.cc

Issue 628443002: replace OVERRIDE and FINAL with override and final in cc/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase on master Created 6 years, 2 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
« no previous file with comments | « cc/resources/raster_worker_pool.cc ('k') | cc/resources/raster_worker_pool_unittest.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/resources/raster_worker_pool.h" 5 #include "cc/resources/raster_worker_pool.h"
6 6
7 #include "base/test/test_simple_task_runner.h" 7 #include "base/test/test_simple_task_runner.h"
8 #include "base/time/time.h" 8 #include "base/time/time.h"
9 #include "cc/debug/lap_timer.h" 9 #include "cc/debug/lap_timer.h"
10 #include "cc/output/context_provider.h" 10 #include "cc/output/context_provider.h"
(...skipping 17 matching lines...) Expand all
28 #include "third_party/khronos/GLES2/gl2.h" 28 #include "third_party/khronos/GLES2/gl2.h"
29 29
30 namespace cc { 30 namespace cc {
31 namespace { 31 namespace {
32 32
33 class PerfGLES2Interface : public gpu::gles2::GLES2InterfaceStub { 33 class PerfGLES2Interface : public gpu::gles2::GLES2InterfaceStub {
34 // Overridden from gpu::gles2::GLES2Interface: 34 // Overridden from gpu::gles2::GLES2Interface:
35 virtual GLuint CreateImageCHROMIUM(GLsizei width, 35 virtual GLuint CreateImageCHROMIUM(GLsizei width,
36 GLsizei height, 36 GLsizei height,
37 GLenum internalformat, 37 GLenum internalformat,
38 GLenum usage) OVERRIDE { 38 GLenum usage) override {
39 return 1u; 39 return 1u;
40 } 40 }
41 virtual void GenBuffers(GLsizei n, GLuint* buffers) OVERRIDE { 41 virtual void GenBuffers(GLsizei n, GLuint* buffers) override {
42 for (GLsizei i = 0; i < n; ++i) 42 for (GLsizei i = 0; i < n; ++i)
43 buffers[i] = 1u; 43 buffers[i] = 1u;
44 } 44 }
45 virtual void GenTextures(GLsizei n, GLuint* textures) OVERRIDE { 45 virtual void GenTextures(GLsizei n, GLuint* textures) override {
46 for (GLsizei i = 0; i < n; ++i) 46 for (GLsizei i = 0; i < n; ++i)
47 textures[i] = 1u; 47 textures[i] = 1u;
48 } 48 }
49 virtual void GetIntegerv(GLenum pname, GLint* params) OVERRIDE { 49 virtual void GetIntegerv(GLenum pname, GLint* params) override {
50 if (pname == GL_MAX_TEXTURE_SIZE) 50 if (pname == GL_MAX_TEXTURE_SIZE)
51 *params = INT_MAX; 51 *params = INT_MAX;
52 } 52 }
53 virtual void GenQueriesEXT(GLsizei n, GLuint* queries) OVERRIDE { 53 virtual void GenQueriesEXT(GLsizei n, GLuint* queries) override {
54 for (GLsizei i = 0; i < n; ++i) 54 for (GLsizei i = 0; i < n; ++i)
55 queries[i] = 1u; 55 queries[i] = 1u;
56 } 56 }
57 virtual void GetQueryObjectuivEXT(GLuint query, 57 virtual void GetQueryObjectuivEXT(GLuint query,
58 GLenum pname, 58 GLenum pname,
59 GLuint* params) OVERRIDE { 59 GLuint* params) override {
60 if (pname == GL_QUERY_RESULT_AVAILABLE_EXT) 60 if (pname == GL_QUERY_RESULT_AVAILABLE_EXT)
61 *params = 1; 61 *params = 1;
62 } 62 }
63 }; 63 };
64 64
65 class PerfContextProvider : public ContextProvider { 65 class PerfContextProvider : public ContextProvider {
66 public: 66 public:
67 PerfContextProvider() : context_gl_(new PerfGLES2Interface) {} 67 PerfContextProvider() : context_gl_(new PerfGLES2Interface) {}
68 68
69 virtual bool BindToCurrentThread() OVERRIDE { return true; } 69 virtual bool BindToCurrentThread() override { return true; }
70 virtual Capabilities ContextCapabilities() OVERRIDE { 70 virtual Capabilities ContextCapabilities() override {
71 Capabilities capabilities; 71 Capabilities capabilities;
72 capabilities.gpu.image = true; 72 capabilities.gpu.image = true;
73 capabilities.gpu.sync_query = true; 73 capabilities.gpu.sync_query = true;
74 return capabilities; 74 return capabilities;
75 } 75 }
76 virtual gpu::gles2::GLES2Interface* ContextGL() OVERRIDE { 76 virtual gpu::gles2::GLES2Interface* ContextGL() override {
77 return context_gl_.get(); 77 return context_gl_.get();
78 } 78 }
79 virtual gpu::ContextSupport* ContextSupport() OVERRIDE { return &support_; } 79 virtual gpu::ContextSupport* ContextSupport() override { return &support_; }
80 virtual class GrContext* GrContext() OVERRIDE { return NULL; } 80 virtual class GrContext* GrContext() override { return NULL; }
81 virtual bool IsContextLost() OVERRIDE { return false; } 81 virtual bool IsContextLost() override { return false; }
82 virtual void VerifyContexts() OVERRIDE {} 82 virtual void VerifyContexts() override {}
83 virtual void DeleteCachedResources() OVERRIDE {} 83 virtual void DeleteCachedResources() override {}
84 virtual bool DestroyedOnMainThread() OVERRIDE { return false; } 84 virtual bool DestroyedOnMainThread() override { return false; }
85 virtual void SetLostContextCallback(const LostContextCallback& cb) OVERRIDE {} 85 virtual void SetLostContextCallback(const LostContextCallback& cb) override {}
86 virtual void SetMemoryPolicyChangedCallback( 86 virtual void SetMemoryPolicyChangedCallback(
87 const MemoryPolicyChangedCallback& cb) OVERRIDE {} 87 const MemoryPolicyChangedCallback& cb) override {}
88 88
89 private: 89 private:
90 virtual ~PerfContextProvider() {} 90 virtual ~PerfContextProvider() {}
91 91
92 scoped_ptr<PerfGLES2Interface> context_gl_; 92 scoped_ptr<PerfGLES2Interface> context_gl_;
93 TestContextSupport support_; 93 TestContextSupport support_;
94 }; 94 };
95 95
96 enum RasterWorkerPoolType { 96 enum RasterWorkerPoolType {
97 RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER, 97 RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER,
98 RASTER_WORKER_POOL_TYPE_ZERO_COPY, 98 RASTER_WORKER_POOL_TYPE_ZERO_COPY,
99 RASTER_WORKER_POOL_TYPE_ONE_COPY, 99 RASTER_WORKER_POOL_TYPE_ONE_COPY,
100 RASTER_WORKER_POOL_TYPE_GPU, 100 RASTER_WORKER_POOL_TYPE_GPU,
101 RASTER_WORKER_POOL_TYPE_BITMAP 101 RASTER_WORKER_POOL_TYPE_BITMAP
102 }; 102 };
103 103
104 static const int kTimeLimitMillis = 2000; 104 static const int kTimeLimitMillis = 2000;
105 static const int kWarmupRuns = 5; 105 static const int kWarmupRuns = 5;
106 static const int kTimeCheckInterval = 10; 106 static const int kTimeCheckInterval = 10;
107 107
108 class PerfImageDecodeTaskImpl : public ImageDecodeTask { 108 class PerfImageDecodeTaskImpl : public ImageDecodeTask {
109 public: 109 public:
110 PerfImageDecodeTaskImpl() {} 110 PerfImageDecodeTaskImpl() {}
111 111
112 // Overridden from Task: 112 // Overridden from Task:
113 virtual void RunOnWorkerThread() OVERRIDE {} 113 virtual void RunOnWorkerThread() override {}
114 114
115 // Overridden from RasterizerTask: 115 // Overridden from RasterizerTask:
116 virtual void ScheduleOnOriginThread(RasterizerTaskClient* client) OVERRIDE {} 116 virtual void ScheduleOnOriginThread(RasterizerTaskClient* client) override {}
117 virtual void CompleteOnOriginThread(RasterizerTaskClient* client) OVERRIDE {} 117 virtual void CompleteOnOriginThread(RasterizerTaskClient* client) override {}
118 virtual void RunReplyOnOriginThread() OVERRIDE { Reset(); } 118 virtual void RunReplyOnOriginThread() override { Reset(); }
119 119
120 void Reset() { 120 void Reset() {
121 did_run_ = false; 121 did_run_ = false;
122 did_complete_ = false; 122 did_complete_ = false;
123 } 123 }
124 124
125 protected: 125 protected:
126 virtual ~PerfImageDecodeTaskImpl() {} 126 virtual ~PerfImageDecodeTaskImpl() {}
127 127
128 private: 128 private:
129 DISALLOW_COPY_AND_ASSIGN(PerfImageDecodeTaskImpl); 129 DISALLOW_COPY_AND_ASSIGN(PerfImageDecodeTaskImpl);
130 }; 130 };
131 131
132 class PerfRasterTaskImpl : public RasterTask { 132 class PerfRasterTaskImpl : public RasterTask {
133 public: 133 public:
134 PerfRasterTaskImpl(scoped_ptr<ScopedResource> resource, 134 PerfRasterTaskImpl(scoped_ptr<ScopedResource> resource,
135 ImageDecodeTask::Vector* dependencies) 135 ImageDecodeTask::Vector* dependencies)
136 : RasterTask(resource.get(), dependencies), resource_(resource.Pass()) {} 136 : RasterTask(resource.get(), dependencies), resource_(resource.Pass()) {}
137 137
138 // Overridden from Task: 138 // Overridden from Task:
139 virtual void RunOnWorkerThread() OVERRIDE {} 139 virtual void RunOnWorkerThread() override {}
140 140
141 // Overridden from RasterizerTask: 141 // Overridden from RasterizerTask:
142 virtual void ScheduleOnOriginThread(RasterizerTaskClient* client) OVERRIDE { 142 virtual void ScheduleOnOriginThread(RasterizerTaskClient* client) override {
143 raster_buffer_ = client->AcquireBufferForRaster(resource()); 143 raster_buffer_ = client->AcquireBufferForRaster(resource());
144 } 144 }
145 virtual void CompleteOnOriginThread(RasterizerTaskClient* client) OVERRIDE { 145 virtual void CompleteOnOriginThread(RasterizerTaskClient* client) override {
146 client->ReleaseBufferForRaster(raster_buffer_.Pass()); 146 client->ReleaseBufferForRaster(raster_buffer_.Pass());
147 } 147 }
148 virtual void RunReplyOnOriginThread() OVERRIDE { Reset(); } 148 virtual void RunReplyOnOriginThread() override { Reset(); }
149 149
150 void Reset() { 150 void Reset() {
151 did_run_ = false; 151 did_run_ = false;
152 did_complete_ = false; 152 did_complete_ = false;
153 } 153 }
154 154
155 protected: 155 protected:
156 virtual ~PerfRasterTaskImpl() {} 156 virtual ~PerfRasterTaskImpl() {}
157 157
158 private: 158 private:
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
220 scoped_ptr<TaskGraphRunner> task_graph_runner_; 220 scoped_ptr<TaskGraphRunner> task_graph_runner_;
221 LapTimer timer_; 221 LapTimer timer_;
222 }; 222 };
223 223
224 class RasterWorkerPoolPerfTest 224 class RasterWorkerPoolPerfTest
225 : public RasterWorkerPoolPerfTestBase, 225 : public RasterWorkerPoolPerfTestBase,
226 public testing::TestWithParam<RasterWorkerPoolType>, 226 public testing::TestWithParam<RasterWorkerPoolType>,
227 public RasterizerClient { 227 public RasterizerClient {
228 public: 228 public:
229 // Overridden from testing::Test: 229 // Overridden from testing::Test:
230 virtual void SetUp() OVERRIDE { 230 virtual void SetUp() override {
231 switch (GetParam()) { 231 switch (GetParam()) {
232 case RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER: 232 case RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER:
233 Create3dOutputSurfaceAndResourceProvider(); 233 Create3dOutputSurfaceAndResourceProvider();
234 raster_worker_pool_ = PixelBufferRasterWorkerPool::Create( 234 raster_worker_pool_ = PixelBufferRasterWorkerPool::Create(
235 task_runner_.get(), 235 task_runner_.get(),
236 task_graph_runner_.get(), 236 task_graph_runner_.get(),
237 context_provider_.get(), 237 context_provider_.get(),
238 resource_provider_.get(), 238 resource_provider_.get(),
239 std::numeric_limits<size_t>::max()); 239 std::numeric_limits<size_t>::max());
240 break; 240 break;
(...skipping 27 matching lines...) Expand all
268 raster_worker_pool_ = 268 raster_worker_pool_ =
269 BitmapRasterWorkerPool::Create(task_runner_.get(), 269 BitmapRasterWorkerPool::Create(task_runner_.get(),
270 task_graph_runner_.get(), 270 task_graph_runner_.get(),
271 resource_provider_.get()); 271 resource_provider_.get());
272 break; 272 break;
273 } 273 }
274 274
275 DCHECK(raster_worker_pool_); 275 DCHECK(raster_worker_pool_);
276 raster_worker_pool_->AsRasterizer()->SetClient(this); 276 raster_worker_pool_->AsRasterizer()->SetClient(this);
277 } 277 }
278 virtual void TearDown() OVERRIDE { 278 virtual void TearDown() override {
279 raster_worker_pool_->AsRasterizer()->Shutdown(); 279 raster_worker_pool_->AsRasterizer()->Shutdown();
280 raster_worker_pool_->AsRasterizer()->CheckForCompletedTasks(); 280 raster_worker_pool_->AsRasterizer()->CheckForCompletedTasks();
281 } 281 }
282 282
283 // Overriden from RasterizerClient: 283 // Overriden from RasterizerClient:
284 virtual void DidFinishRunningTasks(TaskSet task_set) OVERRIDE { 284 virtual void DidFinishRunningTasks(TaskSet task_set) override {
285 raster_worker_pool_->AsRasterizer()->CheckForCompletedTasks(); 285 raster_worker_pool_->AsRasterizer()->CheckForCompletedTasks();
286 } 286 }
287 virtual TaskSetCollection TasksThatShouldBeForcedToComplete() const OVERRIDE { 287 virtual TaskSetCollection TasksThatShouldBeForcedToComplete() const override {
288 return TaskSetCollection(); 288 return TaskSetCollection();
289 } 289 }
290 290
291 void RunMessageLoopUntilAllTasksHaveCompleted() { 291 void RunMessageLoopUntilAllTasksHaveCompleted() {
292 task_graph_runner_->RunUntilIdle(); 292 task_graph_runner_->RunUntilIdle();
293 task_runner_->RunUntilIdle(); 293 task_runner_->RunUntilIdle();
294 } 294 }
295 295
296 void RunScheduleTasksTest(const std::string& test_name, 296 void RunScheduleTasksTest(const std::string& test_name,
297 unsigned num_raster_tasks, 297 unsigned num_raster_tasks,
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 ::testing::Values(RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER, 471 ::testing::Values(RASTER_WORKER_POOL_TYPE_PIXEL_BUFFER,
472 RASTER_WORKER_POOL_TYPE_ZERO_COPY, 472 RASTER_WORKER_POOL_TYPE_ZERO_COPY,
473 RASTER_WORKER_POOL_TYPE_ONE_COPY, 473 RASTER_WORKER_POOL_TYPE_ONE_COPY,
474 RASTER_WORKER_POOL_TYPE_GPU, 474 RASTER_WORKER_POOL_TYPE_GPU,
475 RASTER_WORKER_POOL_TYPE_BITMAP)); 475 RASTER_WORKER_POOL_TYPE_BITMAP));
476 476
477 class RasterWorkerPoolCommonPerfTest : public RasterWorkerPoolPerfTestBase, 477 class RasterWorkerPoolCommonPerfTest : public RasterWorkerPoolPerfTestBase,
478 public testing::Test { 478 public testing::Test {
479 public: 479 public:
480 // Overridden from testing::Test: 480 // Overridden from testing::Test:
481 virtual void SetUp() OVERRIDE { 481 virtual void SetUp() override {
482 output_surface_ = FakeOutputSurface::Create3d(context_provider_).Pass(); 482 output_surface_ = FakeOutputSurface::Create3d(context_provider_).Pass();
483 CHECK(output_surface_->BindToClient(&output_surface_client_)); 483 CHECK(output_surface_->BindToClient(&output_surface_client_));
484 resource_provider_ = 484 resource_provider_ =
485 ResourceProvider::Create( 485 ResourceProvider::Create(
486 output_surface_.get(), NULL, NULL, 0, false, 1, false).Pass(); 486 output_surface_.get(), NULL, NULL, 0, false, 1, false).Pass();
487 } 487 }
488 488
489 void RunBuildRasterTaskQueueTest(const std::string& test_name, 489 void RunBuildRasterTaskQueueTest(const std::string& test_name,
490 unsigned num_raster_tasks, 490 unsigned num_raster_tasks,
491 unsigned num_image_decode_tasks) { 491 unsigned num_image_decode_tasks) {
(...skipping 25 matching lines...) Expand all
517 RunBuildRasterTaskQueueTest("1_0", 1, 0); 517 RunBuildRasterTaskQueueTest("1_0", 1, 0);
518 RunBuildRasterTaskQueueTest("32_0", 32, 0); 518 RunBuildRasterTaskQueueTest("32_0", 32, 0);
519 RunBuildRasterTaskQueueTest("1_1", 1, 1); 519 RunBuildRasterTaskQueueTest("1_1", 1, 1);
520 RunBuildRasterTaskQueueTest("32_1", 32, 1); 520 RunBuildRasterTaskQueueTest("32_1", 32, 1);
521 RunBuildRasterTaskQueueTest("1_4", 1, 4); 521 RunBuildRasterTaskQueueTest("1_4", 1, 4);
522 RunBuildRasterTaskQueueTest("32_4", 32, 4); 522 RunBuildRasterTaskQueueTest("32_4", 32, 4);
523 } 523 }
524 524
525 } // namespace 525 } // namespace
526 } // namespace cc 526 } // namespace cc
OLDNEW
« no previous file with comments | « cc/resources/raster_worker_pool.cc ('k') | cc/resources/raster_worker_pool_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698