New issue
Advanced search Search tips

Issue 602785 link

Starred by 2 users

Issue metadata

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

Blocking:
issue 606672



Sign in to add a comment

Optimization: use power-of-2 textures in cc::ApplyImageFilter

Project Member Reported by senorblanco@chromium.org, Apr 12 2016

Issue description

In cc, we create a render target for Skia to apply filters. Currently, it's the exact size of the computed destination rectangle. If we round the width and height up to the nearest power of 2, we should get much better use of the texture cache, and improved performance.
 
Good try
Blocking: 606672
Project Member

Comment 3 by bugdroid1@chromium.org, May 5 2016

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

commit d47a9ef38a0c81f0250e575f08fb47fb56fe1d66
Author: senorblanco <senorblanco@chromium.org>
Date: Thu May 05 04:28:03 2016

cc: optimize filter backing store texture allocation.

The backing store used for filters in cc is determined by the
primitive bounds, and the filter outsets. This means that
we may end up allocating many textures of different sizes,
defeating Skia's texture cache. Texture allocation can be
slow, so we can ameliorate the allocation pressure by
rounding width and height up to the nearest power of 2.
(This is what Skia does internally for scratch textures).

BUG= 602785 
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

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

[modify] https://crrev.com/d47a9ef38a0c81f0250e575f08fb47fb56fe1d66/cc/output/gl_renderer.cc
[modify] https://crrev.com/d47a9ef38a0c81f0250e575f08fb47fb56fe1d66/cc/test/data/rotated_drop_shadow_filter_gl.png
[modify] https://crrev.com/d47a9ef38a0c81f0250e575f08fb47fb56fe1d66/cc/test/data/rotated_filter_gl.png
[modify] https://crrev.com/d47a9ef38a0c81f0250e575f08fb47fb56fe1d66/cc/trees/layer_tree_host_pixeltest_filters.cc
[modify] https://crrev.com/d47a9ef38a0c81f0250e575f08fb47fb56fe1d66/third_party/WebKit/LayoutTests/TestExpectations

Status: Fixed (was: Assigned)
Project Member

Comment 5 by bugdroid1@chromium.org, May 6 2016

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

commit ca7eabfe2b7031f913abd478f788e105a792585e
Author: Rebaseline Bot <blink-rebaseline-bot@chromium.org>
Date: Fri May 06 19:37:38 2016

Auto-rebaseline for r392107

https://chromium.googlesource.com/chromium/src/+/8496f370f

BUG= 602785 , 602933 , 605515 
TBR=senorblanco@chromium.org

Review URL: https://codereview.chromium.org/1959753002 .

Cr-Commit-Position: refs/heads/master@{#392127}

[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-subregion-hw-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/linux/svg/batik/filters/feTile-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/smallFonts-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/linux/svg/batik/text/textFeatures-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-subregion-hw-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/mac/svg/batik/filters/feTile-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/smallFonts-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-subregion-hw-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/win/svg/batik/filters/feTile-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/smallFonts-expected.png
[modify] https://crrev.com/ca7eabfe2b7031f913abd478f788e105a792585e/third_party/WebKit/LayoutTests/platform/win/svg/batik/text/textFeatures-expected.png

Comment 6 by suzyh@chromium.org, Apr 5 2017

Components: -Blink>CSS>Filters Blink>Compositing>Filters

Sign in to add a comment