New issue
Advanced search Search tips

Issue 609276 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocking:
issue 600867



Sign in to add a comment

Add use-counting for blurry or non-performant rasterization of transform scale changes

Project Member Reported by chrishtr@chromium.org, May 4 2016

Issue description

Two use counters:

1. If will-change: transform is not present on the cc::Layer, and the
content is rastered first at scale s_1, then the scale of the cc::Layer is changed to scale s_2 != s_1, then count the root document of the WebViewImpl as having "blurry raster"

2. If will-change: transform is not present on the cc::Layer, and the
content is rastered first at scale s_1, and n of the last m compositor
commits yielded different scales from each other on that cc::Layer, then
count the root document of the WebViewImpl as having "potentially
non-performant layer rasterization". Choose n and m to something simple,
like n=5 and m=10.

 
Blockedon: -600867
Blocking: 600867
Project Member

Comment 2 by bugdroid1@chromium.org, May 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d6dce2606f1e2384484fc021cf926130bbd6840e

commit d6dce2606f1e2384484fc021cf926130bbd6840e
Author: vmpstr <vmpstr@chromium.org>
Date: Wed May 18 20:19:04 2016

Add fixed raster scale use counter histograms.

This patch adds two new values for WebCore.FeatureObserver histogram:
- FixedRasterScale_BlurryContent: this histogram records any time a
  layer without will change has a fixed raster scale and the scale does
  not match the ideal scale (ie, blurry content)
- FixedRasterScale_PotentialPerformanceRegression: this histogram
  records any time we have a non-will change layer that has a fixed
  raster scale and it has attempted to change its scale 5 times out of
  the last 10 frames.

R=danakj, chrishtr
BUG= 609276 
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/1946403003
Cr-Commit-Position: refs/heads/master@{#394526}

[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/blimp/client/feature/compositor/blimp_compositor.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/blink/web_layer_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/blink/web_layer_impl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/layer.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/layer.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/layer_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/layer_impl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/picture_layer_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/layers/picture_layer_impl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/proto/begin_main_frame_and_commit_state.proto
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/proto/layer.proto
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/test/fake_layer_tree_host_client.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/test/layer_tree_test.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host_client.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_host_unittest_remote_server.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/layer_tree_impl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/proxy_common.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/proxy_common.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/proxy_impl.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/proxy_main.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/renderer/gpu/render_widget_compositor_delegate.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/renderer/render_widget.cc
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/content/renderer/render_widget.h
[add] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/LayoutTests/compositing/fixed-raster-scale-use-counts-expected.txt
[add] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/LayoutTests/compositing/fixed-raster-scale-use-counts.html
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/core/frame/UseCounter.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/platform/graphics/GraphicsLayer.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/public/platform/WebLayer.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/third_party/WebKit/public/web/WebWidget.h
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/tools/metrics/histograms/histograms.xml
[modify] https://crrev.com/d6dce2606f1e2384484fc021cf926130bbd6840e/ui/compositor/compositor.h

Comment 3 by vmp...@chromium.org, May 18 2016

Status: Fixed (was: Assigned)

Sign in to add a comment