New issue
Advanced search Search tips

Issue 787178 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

1%-22.3% regression in smoothness.tough_animation_cases at 517158:517309

Project Member Reported by benhenry@google.com, Nov 21 2017

Issue description

Graph links to follow.
 
Project Member

Comment 1 by 42576172...@developer.gserviceaccount.com, Nov 21 2017

All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=787178

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


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

chromium-rel-win10
chromium-rel-win7-dual
chromium-rel-win7-gpu-ati
chromium-rel-win7-x64-dual
Project Member

Comment 3 by 42576172...@developer.gserviceaccount.com, Nov 21 2017

Cc: pdr@chromium.org
Owner: pdr@chromium.org
Status: Assigned (was: Untriaged)

=== Auto-CCing suspected CL author pdr@chromium.org ===

Hi pdr@chromium.org, the bisect results pointed to your CL, please take a look at the
results.


=== BISECT JOB RESULTS ===
Perf regression found with culprit

Suspected Commit
  Author : Philip Rogers
  Commit : 3a664cc9ddcf5f4f78243e1a09a82dd21a47150e
  Date   : Fri Nov 17 02:33:47 2017
  Subject: [root layer scrolls] Use layout overflow for background invalidation

Bisect Details
  Configuration: win_perf_bisect
  Benchmark    : smoothness.tough_animation_cases
  Metric       : frame_times/css_value_type_length_3d.html?api_css_animations_N_0316
  Change       : 5.82% | 16.5787057391 -> 17.5434494582

Revision             Result                     N
chromium@517182      16.5787 +- 0.0978401       6      good
chromium@517235      16.651 +- 0.102061         6      good
chromium@517249      16.674 +- 0.0105058        6      good
chromium@517253      16.6712 +- 0.00862373      6      good
chromium@517254      17.3455 +- 0.466723        6      bad       <--
chromium@517255      17.3168 +- 0.249488        6      bad
chromium@517256      17.3149 +- 0.382614        6      bad
chromium@517262      17.3425 +- 0.485167        6      bad
chromium@517288      17.5434 +- 0.271733        6      bad

To Run This Test
  src/tools/perf/run_benchmark -v --browser=release --output-format=chartjson --upload-results --pageset-repeat=1 --also-run-disabled-tests --story-filter=css.value.type.length.3d.html.api.css.animations.N.0316 smoothness.tough_animation_cases

More information on addressing performance regressions:
  http://g.co/ChromePerformanceRegressions

Debug information about this bisect:
  https://chromeperf.appspot.com/buildbucket_job_status/8962361271445982576


For feedback, file a bug with component Speed>Bisection
Project Member

Comment 4 by 42576172...@developer.gserviceaccount.com, Nov 22 2017

๐Ÿ“ Pinpoint job started.
https://pinpoint-dot-chromeperf.appspot.com/job/16c9fec3f80000
Project Member

Comment 5 by 42576172...@developer.gserviceaccount.com, Nov 22 2017

Cc: skobes@chromium.org wangxianzhu@chromium.org
๐Ÿ“ Found a significant difference after 1 commit.
https://pinpoint-dot-chromeperf.appspot.com/job/16c9fec3f80000

[root layer scrolls] Use layout overflow for background invalidation
By pdr@chromium.org ยท Fri Nov 17 02:33:47 2017
chromium @ 3a664cc9ddcf5f4f78243e1a09a82dd21a47150e

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

Comment 6 by bugdroid1@chromium.org, Nov 23 2017

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

commit 8343353bd2d776f81d028531400101060a9630b4
Author: Philip Rogers <pdr@chromium.org>
Date: Thu Nov 23 06:06:54 2017

Do not invalidate solid color backgrounds on location changes

[1] introduced a perf regression because it caused background
invalidations whenever the layout overflow's location changed.
This is needed for cases such as gradients, but is not needed in
the common case of solid color backgrounds.

This patch adds logic to not invalidate backgrounds on location
changes when the background is solid color and fully covers the
layout overflow area. This required extracting the incremental
invalidation logic out of ShouldFullyInvalidateBackgroundOnLayoutOverflowChange
so the function now returns true for background changes only.

This restores the following tests to their baselines before [1]:
paint/invalidation/overflow/justify-items-overflow-change.html
paint/invalidation/overflow/justify-self-overflow-change.html
paint/invalidation/position/transform-absolute-child.html
paint/invalidation/transform/transform-rotate-and-remove.html
paint/invalidation/offset-change-wrong-invalidation-with-float.html

[1] https://chromium.googlesource.com/chromium/src/+/3a664cc9ddcf5f4f78243e1a09a82dd21a47150e

Bug:  781419 ,  787178 

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_root_layer_scrolls;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I875f83a3f0d126af97f8d389d982f5f613737170
Reviewed-on: https://chromium-review.googlesource.com/786149
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#518863}
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/overflow/justify-items-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/overflow/justify-self-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/position/transform-absolute-child-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/transform-rotate-and-remove-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/paint/invalidation/overflow/justify-items-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/paint/invalidation/overflow/justify-self-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/paint/invalidation/position/transform-absolute-child-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/paint/invalidation/transform/transform-rotate-and-remove-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/platform/mac/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/flag-specific/root-layer-scrolls/platform/win/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/paint/invalidation/overflow/justify-items-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/paint/invalidation/overflow/justify-self-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/paint/invalidation/position/transform-absolute-child-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/paint/invalidation/transform/transform-rotate-and-remove-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/virtual/spv175/paint/invalidation/overflow/justify-items-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/virtual/spv175/paint/invalidation/overflow/justify-self-overflow-change-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/LayoutTests/virtual/spv175/paint/invalidation/transform/transform-rotate-and-remove-expected.txt
[modify] https://crrev.com/8343353bd2d776f81d028531400101060a9630b4/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.cpp

Comment 7 by pdr@chromium.org, Nov 24 2017

Status: Fixed (was: Assigned)

Sign in to add a comment