diff options
author | vmiura <vmiura@chromium.org> | 2015-02-03 14:19:57 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-03 22:21:02 +0000 |
commit | 9084b34a9c65689297314f65c389e063556df88e (patch) | |
tree | 36143b9470ded40cd918d173cd30f9a03c30c565 /cc | |
parent | d17dc45807d6041ea9df322a4fd4ecefbfcd1664 (diff) | |
download | chromium_src-9084b34a9c65689297314f65c389e063556df88e.zip chromium_src-9084b34a9c65689297314f65c389e063556df88e.tar.gz chromium_src-9084b34a9c65689297314f65c389e063556df88e.tar.bz2 |
Add a command-line flag to enable threaded GPU rasterization.
For now a no-op in the renderer.
Enable:
--enable-threaded-gpu-rasterization
Disable (which takes priority over Enable):
--disable-threaded-gpu-rasterization
BUG=454500
Review URL: https://codereview.chromium.org/895763002
Cr-Commit-Position: refs/heads/master@{#314418}
Diffstat (limited to 'cc')
-rw-r--r-- | cc/resources/gpu_rasterizer.cc | 11 | ||||
-rw-r--r-- | cc/resources/gpu_rasterizer.h | 15 | ||||
-rw-r--r-- | cc/resources/rasterizer.h | 1 | ||||
-rw-r--r-- | cc/trees/layer_tree_host_impl.cc | 3 | ||||
-rw-r--r-- | cc/trees/layer_tree_settings.cc | 1 | ||||
-rw-r--r-- | cc/trees/layer_tree_settings.h | 1 |
6 files changed, 17 insertions, 15 deletions
diff --git a/cc/resources/gpu_rasterizer.cc b/cc/resources/gpu_rasterizer.cc index 3fdc8bb..369f12c 100644 --- a/cc/resources/gpu_rasterizer.cc +++ b/cc/resources/gpu_rasterizer.cc @@ -31,22 +31,22 @@ scoped_ptr<GpuRasterizer> GpuRasterizer::Create( ContextProvider* context_provider, ResourceProvider* resource_provider, bool use_distance_field_text, - bool tile_prepare_enabled, + bool threaded_gpu_rasterization_enabled, int msaa_sample_count) { return make_scoped_ptr<GpuRasterizer>(new GpuRasterizer( context_provider, resource_provider, use_distance_field_text, - tile_prepare_enabled, msaa_sample_count)); + threaded_gpu_rasterization_enabled, msaa_sample_count)); } GpuRasterizer::GpuRasterizer(ContextProvider* context_provider, ResourceProvider* resource_provider, bool use_distance_field_text, - bool tile_prepare_enabled, + bool threaded_gpu_rasterization_enabled, int msaa_sample_count) : context_provider_(context_provider), resource_provider_(resource_provider), use_distance_field_text_(use_distance_field_text), - tile_prepare_enabled_(tile_prepare_enabled), + threaded_gpu_rasterization_enabled_(threaded_gpu_rasterization_enabled), msaa_sample_count_(msaa_sample_count) { DCHECK(context_provider_); } @@ -55,8 +55,7 @@ GpuRasterizer::~GpuRasterizer() { } PrepareTilesMode GpuRasterizer::GetPrepareTilesMode() { - return tile_prepare_enabled_ ? PrepareTilesMode::PREPARE_PRIORITIZED_TILES - : PrepareTilesMode::PREPARE_NONE; + return PrepareTilesMode::PREPARE_NONE; } void GpuRasterizer::RasterizeTiles( diff --git a/cc/resources/gpu_rasterizer.h b/cc/resources/gpu_rasterizer.h index 206b051..79a0596 100644 --- a/cc/resources/gpu_rasterizer.h +++ b/cc/resources/gpu_rasterizer.h @@ -22,11 +22,12 @@ class CC_EXPORT GpuRasterizer : public Rasterizer { public: ~GpuRasterizer() override; - static scoped_ptr<GpuRasterizer> Create(ContextProvider* context_provider, - ResourceProvider* resource_provider, - bool use_distance_field_text, - bool tile_prepare_enabled, - int msaa_sample_count); + static scoped_ptr<GpuRasterizer> Create( + ContextProvider* context_provider, + ResourceProvider* resource_provider, + bool use_distance_field_text, + bool threaded_gpu_rasterization_enabled, + int msaa_sample_count); PrepareTilesMode GetPrepareTilesMode() override; void RasterizeTiles( const TileVector& tiles, @@ -38,7 +39,7 @@ class CC_EXPORT GpuRasterizer : public Rasterizer { GpuRasterizer(ContextProvider* context_provider, ResourceProvider* resource_provider, bool use_distance_filed_text, - bool tile_prepare_enabled, + bool threaded_gpu_rasterization_enabled, int msaa_sample_count); using ScopedResourceWriteLocks = @@ -55,7 +56,7 @@ class CC_EXPORT GpuRasterizer : public Rasterizer { SkMultiPictureDraw multi_picture_draw_; bool use_distance_field_text_; - bool tile_prepare_enabled_; + bool threaded_gpu_rasterization_enabled_; int msaa_sample_count_; DISALLOW_COPY_AND_ASSIGN(GpuRasterizer); diff --git a/cc/resources/rasterizer.h b/cc/resources/rasterizer.h index 95b9ce2..43df0b0 100644 --- a/cc/resources/rasterizer.h +++ b/cc/resources/rasterizer.h @@ -16,7 +16,6 @@ class TileManager; enum class PrepareTilesMode { RASTERIZE_PRIORITIZED_TILES, - PREPARE_PRIORITIZED_TILES, PREPARE_NONE }; diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc index c8ee69c..34278c6 100644 --- a/cc/trees/layer_tree_host_impl.cc +++ b/cc/trees/layer_tree_host_impl.cc @@ -1977,7 +1977,8 @@ scoped_ptr<Rasterizer> LayerTreeHostImpl::CreateRasterizer() { ContextProvider* context_provider = output_surface_->context_provider(); if (use_gpu_rasterization_ && context_provider) { return GpuRasterizer::Create(context_provider, resource_provider_.get(), - settings_.use_distance_field_text, false, + settings_.use_distance_field_text, + settings_.threaded_gpu_rasterization_enabled, settings_.gpu_rasterization_msaa_sample_count); } return SoftwareRasterizer::Create(); diff --git a/cc/trees/layer_tree_settings.cc b/cc/trees/layer_tree_settings.cc index d578daf..07dfc29 100644 --- a/cc/trees/layer_tree_settings.cc +++ b/cc/trees/layer_tree_settings.cc @@ -30,6 +30,7 @@ LayerTreeSettings::LayerTreeSettings() gpu_rasterization_enabled(false), gpu_rasterization_forced(false), gpu_rasterization_msaa_sample_count(0), + threaded_gpu_rasterization_enabled(false), create_low_res_tiling(false), scrollbar_animator(NoAnimator), scrollbar_fade_delay_ms(0), diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h index 597a279..5eacdf8 100644 --- a/cc/trees/layer_tree_settings.h +++ b/cc/trees/layer_tree_settings.h @@ -36,6 +36,7 @@ class CC_EXPORT LayerTreeSettings { bool gpu_rasterization_enabled; bool gpu_rasterization_forced; int gpu_rasterization_msaa_sample_count; + bool threaded_gpu_rasterization_enabled; bool create_low_res_tiling; enum ScrollbarAnimator { |