Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(78)

Issue 2307623002: [SPv2] Defer decision of raster invalidation after paint for changes z-index, transform, etc. (Closed)

Created:
4 years, 3 months ago by Xianzhu
Modified:
4 years, 3 months ago
Reviewers:
chrishtr, pdr.
CC:
ajuma+watch_chromium.org, blink-reviews, blink-reviews-layout_chromium.org, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, eae+blinkwatch, f(malita), jbroman, jchaffraix+rendering, Justin Novosad, leviw+renderwatch, pdr+graphicswatchlist_chromium.org, pdr+renderingwatchlist_chromium.org, rwlbuis, Stephen Chennney, slimming-paint-reviews_chromium.org, szager+layoutwatch_chromium.org, zoltan1
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[SPv2] Defer decision of raster invalidation after paint for changes of z-index, transform, etc. Previously we invalidate paint (which will also cause raster invalidation) of the subtree if z-index, transform changed on an object which will not be composited. This requires logic to precisely predict compositing status which is fragile and causes unnecessary paint invalidations. We don't need to invalidate paint of object which just changes z-index, transform etc. We can invalidate raster if needed after painting. If a cached display item is moved out of the original chunk, invalidate raster for it on both the old chunk and the new chunk. If a cached display item is moved within the chunk behind any other cached display item, invalidate raster for it. Otherwise we don't invalidate raster. BUG=526191 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/eb1f8854d9d8fa17d65ad4daf9de3d97cc9c2538 Cr-Commit-Position: refs/heads/master@{#417520}

Patch Set 1 #

Patch Set 2 : - #

Patch Set 3 : Update FlagExpectations/enable-slimming-paint-v2 #

Patch Set 4 : All paint property #

Total comments: 6

Patch Set 5 : x #

Total comments: 6

Patch Set 6 : No union #

Patch Set 7 : - #

Patch Set 8 : Update spv2 expectations #

Patch Set 9 : - #

Patch Set 10 : Remove duplicated spv2 expectation entries #

Messages

Total messages: 64 (43 generated)
Xianzhu
4 years, 3 months ago (2016-09-01 20:43:59 UTC) #12
chrishtr
Is there a measurable performance impact from this change? Will not invalidating the objects and ...
4 years, 3 months ago (2016-09-02 04:35:19 UTC) #18
Xianzhu
On 2016/09/02 04:35:19, chrishtr wrote: > Is there a measurable performance impact from this change? ...
4 years, 3 months ago (2016-09-02 05:46:13 UTC) #19
Xianzhu
Updated description to better reflect the intent.
4 years, 3 months ago (2016-09-06 17:43:47 UTC) #21
chrishtr
https://codereview.chromium.org/2307623002/diff/60001/third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h File third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h (right): https://codereview.chromium.org/2307623002/diff/60001/third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h#newcode52 third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h:52: Vector<PaintChunk>::const_iterator findChunkByDisplayItemIndex(size_t index) const { return findChunkInVectorByDisplayItemIndex(m_paintChunks, index); } ...
4 years, 3 months ago (2016-09-06 22:14:12 UTC) #24
Xianzhu
https://codereview.chromium.org/2307623002/diff/60001/third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h File third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h (right): https://codereview.chromium.org/2307623002/diff/60001/third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h#newcode52 third_party/WebKit/Source/platform/graphics/paint/PaintArtifact.h:52: Vector<PaintChunk>::const_iterator findChunkByDisplayItemIndex(size_t index) const { return findChunkInVectorByDisplayItemIndex(m_paintChunks, index); } ...
4 years, 3 months ago (2016-09-06 22:42:38 UTC) #25
chrishtr
https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 File third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 (right): https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2#newcode603 third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2:603: fast/css-grid-layout/grid-item-z-index-change-repaint.html [ Failure ] These are marked as Failure ...
4 years, 3 months ago (2016-09-07 20:49:03 UTC) #30
Xianzhu
pdr@ what's your opinion about running tests with spv2 expectations different from spv1 expectations? https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 ...
4 years, 3 months ago (2016-09-07 21:38:35 UTC) #31
pdr.
https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 File third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 (right): https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2#newcode603 third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2:603: fast/css-grid-layout/grid-item-z-index-change-repaint.html [ Failure ] On 2016/09/07 at 21:38:35, Xianzhu ...
4 years, 3 months ago (2016-09-08 01:36:23 UTC) #32
Xianzhu
https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 File third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 (right): https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2#newcode603 third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2:603: fast/css-grid-layout/grid-item-z-index-change-repaint.html [ Failure ] On 2016/09/08 01:36:23, pdr. wrote: ...
4 years, 3 months ago (2016-09-08 03:01:42 UTC) #33
pdr.
On 2016/09/08 at 03:01:42, wangxianzhu wrote: > https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 > File third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 (right): > > https://codereview.chromium.org/2307623002/diff/80001/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2#newcode603 ...
4 years, 3 months ago (2016-09-08 03:25:48 UTC) #38
chrishtr
lgtm
4 years, 3 months ago (2016-09-08 20:30:08 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2307623002/140001
4 years, 3 months ago (2016-09-08 23:02:58 UTC) #46
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/232671) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, ...
4 years, 3 months ago (2016-09-08 23:06:31 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2307623002/160001
4 years, 3 months ago (2016-09-08 23:33:14 UTC) #51
commit-bot: I haz the power
Try jobs failed on following builders: linux_layout_tests_slimming_paint_v2 on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_layout_tests_slimming_paint_v2/builds/420)
4 years, 3 months ago (2016-09-09 00:00:09 UTC) #53
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2307623002/160001
4 years, 3 months ago (2016-09-09 00:35:23 UTC) #55
commit-bot: I haz the power
Exceeded global retry quota
4 years, 3 months ago (2016-09-09 01:26:16 UTC) #57
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2307623002/180001
4 years, 3 months ago (2016-09-09 05:17:32 UTC) #60
commit-bot: I haz the power
Committed patchset #10 (id:180001)
4 years, 3 months ago (2016-09-09 06:38:23 UTC) #62
commit-bot: I haz the power
4 years, 3 months ago (2016-09-09 06:40:21 UTC) #64
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/eb1f8854d9d8fa17d65ad4daf9de3d97cc9c2538
Cr-Commit-Position: refs/heads/master@{#417520}

Powered by Google App Engine
This is Rietveld 408576698