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

Side by Side Diff: cc/raster/tile_task_worker_pool_perftest.cc

Issue 1230203007: Re-land: cc: Use worker context for one-copy tile initialization. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add ContextProvider::ScopedContextGL class Created 5 years, 5 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 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/raster/tile_task_worker_pool.h" 5 #include "cc/raster/tile_task_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 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 std::numeric_limits<size_t>::max()); 258 std::numeric_limits<size_t>::max());
259 break; 259 break;
260 case TILE_TASK_WORKER_POOL_TYPE_ZERO_COPY: 260 case TILE_TASK_WORKER_POOL_TYPE_ZERO_COPY:
261 Create3dOutputSurfaceAndResourceProvider(); 261 Create3dOutputSurfaceAndResourceProvider();
262 tile_task_worker_pool_ = ZeroCopyTileTaskWorkerPool::Create( 262 tile_task_worker_pool_ = ZeroCopyTileTaskWorkerPool::Create(
263 task_runner_.get(), task_graph_runner_.get(), 263 task_runner_.get(), task_graph_runner_.get(),
264 resource_provider_.get()); 264 resource_provider_.get());
265 break; 265 break;
266 case TILE_TASK_WORKER_POOL_TYPE_ONE_COPY: 266 case TILE_TASK_WORKER_POOL_TYPE_ONE_COPY:
267 Create3dOutputSurfaceAndResourceProvider(); 267 Create3dOutputSurfaceAndResourceProvider();
268 staging_resource_pool_ = ResourcePool::Create(resource_provider_.get(),
269 GL_TEXTURE_2D);
270 tile_task_worker_pool_ = OneCopyTileTaskWorkerPool::Create( 268 tile_task_worker_pool_ = OneCopyTileTaskWorkerPool::Create(
271 task_runner_.get(), task_graph_runner_.get(), 269 task_runner_.get(), task_graph_runner_.get(),
272 context_provider_.get(), resource_provider_.get(), 270 context_provider_.get(), resource_provider_.get(),
273 staging_resource_pool_.get(), std::numeric_limits<int>::max(), 271 std::numeric_limits<int>::max(), false, GL_TEXTURE_2D);
274 false);
275 break; 272 break;
276 case TILE_TASK_WORKER_POOL_TYPE_GPU: 273 case TILE_TASK_WORKER_POOL_TYPE_GPU:
277 Create3dOutputSurfaceAndResourceProvider(); 274 Create3dOutputSurfaceAndResourceProvider();
278 tile_task_worker_pool_ = GpuTileTaskWorkerPool::Create( 275 tile_task_worker_pool_ = GpuTileTaskWorkerPool::Create(
279 task_runner_.get(), task_graph_runner_.get(), 276 task_runner_.get(), task_graph_runner_.get(),
280 context_provider_.get(), resource_provider_.get(), false, 0); 277 context_provider_.get(), resource_provider_.get(), false, 0);
281 break; 278 break;
282 case TILE_TASK_WORKER_POOL_TYPE_BITMAP: 279 case TILE_TASK_WORKER_POOL_TYPE_BITMAP:
283 CreateSoftwareOutputSurfaceAndResourceProvider(); 280 CreateSoftwareOutputSurfaceAndResourceProvider();
284 tile_task_worker_pool_ = BitmapTileTaskWorkerPool::Create( 281 tile_task_worker_pool_ = BitmapTileTaskWorkerPool::Create(
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
424 return std::string("_one_copy_tile_task_worker_pool"); 421 return std::string("_one_copy_tile_task_worker_pool");
425 case TILE_TASK_WORKER_POOL_TYPE_GPU: 422 case TILE_TASK_WORKER_POOL_TYPE_GPU:
426 return std::string("_gpu_tile_task_worker_pool"); 423 return std::string("_gpu_tile_task_worker_pool");
427 case TILE_TASK_WORKER_POOL_TYPE_BITMAP: 424 case TILE_TASK_WORKER_POOL_TYPE_BITMAP:
428 return std::string("_bitmap_tile_task_worker_pool"); 425 return std::string("_bitmap_tile_task_worker_pool");
429 } 426 }
430 NOTREACHED(); 427 NOTREACHED();
431 return std::string(); 428 return std::string();
432 } 429 }
433 430
434 scoped_ptr<ResourcePool> staging_resource_pool_;
435 scoped_ptr<TileTaskWorkerPool> tile_task_worker_pool_; 431 scoped_ptr<TileTaskWorkerPool> tile_task_worker_pool_;
436 TestGpuMemoryBufferManager gpu_memory_buffer_manager_; 432 TestGpuMemoryBufferManager gpu_memory_buffer_manager_;
437 TestSharedBitmapManager shared_bitmap_manager_; 433 TestSharedBitmapManager shared_bitmap_manager_;
438 }; 434 };
439 435
440 TEST_P(TileTaskWorkerPoolPerfTest, ScheduleTasks) { 436 TEST_P(TileTaskWorkerPoolPerfTest, ScheduleTasks) {
441 RunScheduleTasksTest("1_0", 1, 0); 437 RunScheduleTasksTest("1_0", 1, 0);
442 RunScheduleTasksTest("32_0", 32, 0); 438 RunScheduleTasksTest("32_0", 32, 0);
443 RunScheduleTasksTest("1_1", 1, 1); 439 RunScheduleTasksTest("1_1", 1, 1);
444 RunScheduleTasksTest("32_1", 32, 1); 440 RunScheduleTasksTest("32_1", 32, 1);
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
511 RunBuildTileTaskQueueTest("1_0", 1, 0); 507 RunBuildTileTaskQueueTest("1_0", 1, 0);
512 RunBuildTileTaskQueueTest("32_0", 32, 0); 508 RunBuildTileTaskQueueTest("32_0", 32, 0);
513 RunBuildTileTaskQueueTest("1_1", 1, 1); 509 RunBuildTileTaskQueueTest("1_1", 1, 1);
514 RunBuildTileTaskQueueTest("32_1", 32, 1); 510 RunBuildTileTaskQueueTest("32_1", 32, 1);
515 RunBuildTileTaskQueueTest("1_4", 1, 4); 511 RunBuildTileTaskQueueTest("1_4", 1, 4);
516 RunBuildTileTaskQueueTest("32_4", 32, 4); 512 RunBuildTileTaskQueueTest("32_4", 32, 4);
517 } 513 }
518 514
519 } // namespace 515 } // namespace
520 } // namespace cc 516 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698