New issue
Advanced search Search tips

Issue 820245 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

7.8% regression in thread_times.tough_scrolling_cases at 541614:541671

Project Member Reported by pdr@google.com, Mar 8 2018

Issue description

Could be related to  https://crbug.com/818772 , lets see if a bisect can find the regression.
 
All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=820245

(For debugging:) Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?sid=2a1310e880534c0afcb6fb46201bd8ef9a660a10756e9c3128a54a0674ee1d8d


Bot(s) for this bug's original alert(s):

android-nexus5
📍 Pinpoint job started.
https://pinpoint-dot-chromeperf.appspot.com/job/11901d1a440000

Comment 3 by pdr@chromium.org, Mar 8 2018

Cc: -pdr@google.com pdr@chromium.org
Cc: reed@google.com
Owner: reed@google.com
Status: Assigned (was: Untriaged)
📍 Found a significant difference after 1 commit.
https://pinpoint-dot-chromeperf.appspot.com/job/11901d1a440000

Revert "Revert "add tiler for SkDraw"" by reed@google.com
https://skia.googlesource.com/skia/+/b5e1f7558052cc60deaf23ccc2c898d1c6c94c09

Understanding performance regressions:
  http://g.co/ChromePerformanceRegressions

Comment 5 by pdr@chromium.org, Mar 10 2018

Cc: fmalita@chromium.org
Components: Internals>Skia
Owner: fmalita@chromium.org
Florin, can you triage this?
Owner: reed@google.com
The test names suggest a large canvas size, so the blame seems reasonable.

@reed do we expect tiling to have a noticeable raster time impact?

IIUC the current tile size is 8K, while previously we only supported canvas sizes up to 32K.  Does that mean that for canvas sizes between 8K and 32K we are now using the draw tiler while before we were not?

Comment 7 by reed@google.com, Mar 12 2018

correct. we can now draw into nearly any size raster canvas.
Project Member

Comment 8 by bugdroid1@chromium.org, Apr 12 2018

The following revision refers to this bug:
  https://skia.googlesource.com/skia/+/2dc50cc92af008155d98f3729828eae71f82930d

commit 2dc50cc92af008155d98f3729828eae71f82930d
Author: Mike Reed <reed@google.com>
Date: Thu Apr 12 16:22:30 2018

add conservative bounds to raster tiling

This allows the tiler to optimally visit only the tiles that might intersect
the drawing. Not all call-sites can cheaply compute their bounds, so for those
we just pass nullptr, which tells the tiler to visit all of the tiles.

Bug: 818693
Bug: 820245
Bug: 820470
Change-Id: I8bda668a99bcdb2a9a74a8278ec0cf1004acba6e
Reviewed-on: https://skia-review.googlesource.com/119570
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>

[modify] https://crrev.com/2dc50cc92af008155d98f3729828eae71f82930d/src/core/SkBitmapDevice.cpp
[modify] https://crrev.com/2dc50cc92af008155d98f3729828eae71f82930d/bench/ClipMaskBench.cpp

Project Member

Comment 9 by bugdroid1@chromium.org, Apr 13 2018

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

commit db0f55c0a0e90c982b77e44229aaa3d4ba2f3cdb
Author: skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Fri Apr 13 20:04:30 2018

Roll src/third_party/skia/ c6c5eade8..21dfd8467 (29 commits)

https://skia.googlesource.com/skia.git/+log/c6c5eade823a..21dfd846724a

$ git log c6c5eade8..21dfd8467 --date=short --no-merges --format='%ad %ae %s'
2018-04-13 angle-skia-autoroll Roll third_party/externals/angle2/ ed8d5ec73..cc1293775 (1 commit)
2018-04-12 liyuqian Limit our IsBadForDAA for stroke width > 0 and <= 2
2018-04-12 csmartdalton ccpr: Actually blacklist ANGLE
2018-04-12 angle-skia-autoroll Roll third_party/externals/angle2/ 14f4817c4..ed8d5ec73 (8 commits)
2018-04-12 reed can't abort looper loop, as saveCount won't be balanced
2018-04-12 egdaniel Don't create lazy proxys if their width/height is greater than max tex size
2018-04-12 robertphillips Actually generate the gm images on the DDL1 bot
2018-04-12 caryclark son of path is rect bug
2018-04-12 ethannicholas workaround for buggy macOS GLSL shader compiler
2018-04-12 egdaniel Delete getRenderTargetHandle call on SkSurface.
2018-04-12 reed check for non-finite values output by clipper
2018-04-12 brianosman Fail fast when trying to make a texture that's too large
2018-04-12 djsollen Include shadow ops in the debugger.
2018-04-11 liyuqian Reland "Add private fIsBadForDAA bit to SkPath"
2018-04-12 reed add conservative bounds to raster tiling
2018-04-12 reed always clear the looper when we're unrolling it, to not confused devices
2018-04-11 robertphillips Disable CCPR and the small path renderer on DDL1 bot
2018-04-12 caryclark another rect is path fix
2018-04-11 robertphillips Add SK_SUPPORT_LEGACY_BACKEND_OBJECTS
2018-04-11 csmartdalton Implement Sk2f Load2
2018-04-11 csmartdalton ccpr: Blacklist ANGLE again
2018-04-11 robertphillips Allow SkImage_Gpu to fail some requests in DDL mode
2018-04-11 cwallez update_meta_config: Use new LUCI optional GPU trybot on Windows
2018-04-11 csmartdalton Implement Sk4f min/max
2018-04-11 liyuqian Remove obsolete comment
2018-04-11 benjaminwagner Upgrade PixelC and NexusPlayer OS.
2018-04-12 angle-skia-autoroll Roll third_party/externals/angle2/ 2dadd1d08..14f4817c4 (2 commits)
2018-04-11 caryclark fix bm gm
2018-04-12 mtklein skcms→1654786 concat gamut transform matrices together

Created with:
  roll-dep src/third_party/skia
BUG= chromium:824145 , chromium:821353 ,chromium:818693,chromium:820245,chromium:820470, chromium:824145 ,chromium:815092


The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
TBR=borenet@chromium.org

Change-Id: Ic83a9e3addd0c3593736a5bd03a4b4b2d37b7c51
Reviewed-on: https://chromium-review.googlesource.com/1011738
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: Eric Boren <borenet@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550739}
[modify] https://crrev.com/db0f55c0a0e90c982b77e44229aaa3d4ba2f3cdb/DEPS

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 16 2018

The following revision refers to this bug:
  https://skia.googlesource.com/skia/+/888fc05ef08971628a3b3044b7a99ec3dd53c386

commit 888fc05ef08971628a3b3044b7a99ec3dd53c386
Author: Mike Reed <reed@google.com>
Date: Mon Apr 16 19:09:50 2018

optimize fast/simple case in raster tiling

1. We want to avoid as much overhead as possible in the tiler setup, so do a quick check before handling bounds
2. Compare against current clipbounds instead of devicesize, which may eliminate looping sometimes

Follow-on to https://skia-review.googlesource.com/c/skia/+/119570

Bug: 818693
Bug: 820245
Bug: 820470
Change-Id: If34721c7e467d1ab9e879f25e7b86af6732ca384
Reviewed-on: https://skia-review.googlesource.com/121329
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>

[modify] https://crrev.com/888fc05ef08971628a3b3044b7a99ec3dd53c386/src/core/SkBitmapDevice.cpp

Project Member

Comment 11 by bugdroid1@chromium.org, Apr 16 2018

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

commit 7d2819d74a603b31179b1fc8e6f32d56078009e3
Author: skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Mon Apr 16 23:19:30 2018

Roll src/third_party/skia/ ffbe93296..d234afdc2 (17 commits)

https://skia.googlesource.com/skia.git/+log/ffbe93296838..d234afdc2e56

$ git log ffbe93296..d234afdc2 --date=short --no-merges --format='%ad %ae %s'
2018-04-13 bungeman Remove SkPaint::kGenA8FromLCD_Flag.
2018-04-16 kjlubick Fix many return-std-move-in-c++11 warnings
2018-04-16 fmalita Remove unused BW mask blitters
2018-04-16 mtklein disable -Wself-assign in Google3
2018-04-16 mtklein skcms→2667f0a Add skcms_BestSingleCurve utility
2018-04-16 reed optimize fast/simple case in raster tiling
2018-04-13 liyuqian Simplify the operation on atomic fIsFinishing
2018-04-13 liyuqian Let SkCoverageDeltaList store width and use it during blitting
2018-04-11 liyuqian SkBlitter is not thread safe; make one for each thread.
2018-04-12 liyuqian Snap the bitmap as it may be changed later
2018-04-16 halcanary SkPDF: use std::aligned_storage for typed union
2018-04-16 rmistry Some Chromium bots have been LUCIfied
2018-04-16 angle-skia-autoroll Roll third_party/externals/angle2/ 76b2c3852..a4fa9c278 (3 commits)
2018-04-16 egdaniel Don't allow ganesh to allocate mip maps for wrapped textures.
2018-04-10 bsalomon Draw stroked circles with round caps analytically.
2018-04-16 liyuqian Reland "Cumulate deltas even if they're out of the clip"
2018-04-16 caryclark document SkColor.h

Created with:
  roll-dep src/third_party/skia
BUG=chromium:818693,chromium:820245,chromium:820470


The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
TBR=scroggo@chromium.org

Change-Id: If635e8f9d3bdfb9b34afb9ba244c0a1cc269c868
Reviewed-on: https://chromium-review.googlesource.com/1014413
Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#551166}
[modify] https://crrev.com/7d2819d74a603b31179b1fc8e6f32d56078009e3/DEPS

Project Member

Comment 12 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/db0f55c0a0e90c982b77e44229aaa3d4ba2f3cdb

commit db0f55c0a0e90c982b77e44229aaa3d4ba2f3cdb
Author: skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Fri Apr 13 20:04:30 2018

Roll src/third_party/skia/ c6c5eade8..21dfd8467 (29 commits)

https://skia.googlesource.com/skia.git/+log/c6c5eade823a..21dfd846724a

$ git log c6c5eade8..21dfd8467 --date=short --no-merges --format='%ad %ae %s'
2018-04-13 angle-skia-autoroll Roll third_party/externals/angle2/ ed8d5ec73..cc1293775 (1 commit)
2018-04-12 liyuqian Limit our IsBadForDAA for stroke width > 0 and <= 2
2018-04-12 csmartdalton ccpr: Actually blacklist ANGLE
2018-04-12 angle-skia-autoroll Roll third_party/externals/angle2/ 14f4817c4..ed8d5ec73 (8 commits)
2018-04-12 reed can't abort looper loop, as saveCount won't be balanced
2018-04-12 egdaniel Don't create lazy proxys if their width/height is greater than max tex size
2018-04-12 robertphillips Actually generate the gm images on the DDL1 bot
2018-04-12 caryclark son of path is rect bug
2018-04-12 ethannicholas workaround for buggy macOS GLSL shader compiler
2018-04-12 egdaniel Delete getRenderTargetHandle call on SkSurface.
2018-04-12 reed check for non-finite values output by clipper
2018-04-12 brianosman Fail fast when trying to make a texture that's too large
2018-04-12 djsollen Include shadow ops in the debugger.
2018-04-11 liyuqian Reland "Add private fIsBadForDAA bit to SkPath"
2018-04-12 reed add conservative bounds to raster tiling
2018-04-12 reed always clear the looper when we're unrolling it, to not confused devices
2018-04-11 robertphillips Disable CCPR and the small path renderer on DDL1 bot
2018-04-12 caryclark another rect is path fix
2018-04-11 robertphillips Add SK_SUPPORT_LEGACY_BACKEND_OBJECTS
2018-04-11 csmartdalton Implement Sk2f Load2
2018-04-11 csmartdalton ccpr: Blacklist ANGLE again
2018-04-11 robertphillips Allow SkImage_Gpu to fail some requests in DDL mode
2018-04-11 cwallez update_meta_config: Use new LUCI optional GPU trybot on Windows
2018-04-11 csmartdalton Implement Sk4f min/max
2018-04-11 liyuqian Remove obsolete comment
2018-04-11 benjaminwagner Upgrade PixelC and NexusPlayer OS.
2018-04-12 angle-skia-autoroll Roll third_party/externals/angle2/ 2dadd1d08..14f4817c4 (2 commits)
2018-04-11 caryclark fix bm gm
2018-04-12 mtklein skcms→1654786 concat gamut transform matrices together

Created with:
  roll-dep src/third_party/skia
BUG= chromium:824145 , chromium:821353 ,chromium:818693,chromium:820245,chromium:820470, chromium:824145 ,chromium:815092


The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
TBR=borenet@chromium.org

Change-Id: Ic83a9e3addd0c3593736a5bd03a4b4b2d37b7c51
Reviewed-on: https://chromium-review.googlesource.com/1011738
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: Eric Boren <borenet@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550739}
[modify] https://crrev.com/db0f55c0a0e90c982b77e44229aaa3d4ba2f3cdb/DEPS

Project Member

Comment 13 by bugdroid1@chromium.org, Apr 17 2018

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

commit 7d2819d74a603b31179b1fc8e6f32d56078009e3
Author: skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Mon Apr 16 23:19:30 2018

Roll src/third_party/skia/ ffbe93296..d234afdc2 (17 commits)

https://skia.googlesource.com/skia.git/+log/ffbe93296838..d234afdc2e56

$ git log ffbe93296..d234afdc2 --date=short --no-merges --format='%ad %ae %s'
2018-04-13 bungeman Remove SkPaint::kGenA8FromLCD_Flag.
2018-04-16 kjlubick Fix many return-std-move-in-c++11 warnings
2018-04-16 fmalita Remove unused BW mask blitters
2018-04-16 mtklein disable -Wself-assign in Google3
2018-04-16 mtklein skcms→2667f0a Add skcms_BestSingleCurve utility
2018-04-16 reed optimize fast/simple case in raster tiling
2018-04-13 liyuqian Simplify the operation on atomic fIsFinishing
2018-04-13 liyuqian Let SkCoverageDeltaList store width and use it during blitting
2018-04-11 liyuqian SkBlitter is not thread safe; make one for each thread.
2018-04-12 liyuqian Snap the bitmap as it may be changed later
2018-04-16 halcanary SkPDF: use std::aligned_storage for typed union
2018-04-16 rmistry Some Chromium bots have been LUCIfied
2018-04-16 angle-skia-autoroll Roll third_party/externals/angle2/ 76b2c3852..a4fa9c278 (3 commits)
2018-04-16 egdaniel Don't allow ganesh to allocate mip maps for wrapped textures.
2018-04-10 bsalomon Draw stroked circles with round caps analytically.
2018-04-16 liyuqian Reland "Cumulate deltas even if they're out of the clip"
2018-04-16 caryclark document SkColor.h

Created with:
  roll-dep src/third_party/skia
BUG=chromium:818693,chromium:820245,chromium:820470


The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
TBR=scroggo@chromium.org

Change-Id: If635e8f9d3bdfb9b34afb9ba244c0a1cc269c868
Reviewed-on: https://chromium-review.googlesource.com/1014413
Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#551166}
[modify] https://crrev.com/7d2819d74a603b31179b1fc8e6f32d56078009e3/DEPS

Comment 14 by reed@google.com, May 21 2018

The identified CL was "optimize fast/simple case in raster tiling". This change was required for correctness (i.e. a bug fix) when drawing into a large canvas (i.e. > 8K width or height). This test is also measuring drawing with SW renderer, instead of GPU, so I'm not how representative this test is of general user experience.

Owner: reed@chromium.org

Comment 16 by reed@chromium.org, Jan 16 (6 days ago)

Owner: reed@google.com

Sign in to add a comment