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

Issue 2675773003: Optimize CompositingRecorder::endCompositing to not need an SkPictureBuilder (Closed)

Created:
3 years, 10 months ago by pdr.
Modified:
3 years, 10 months ago
Reviewers:
danakj, chrishtr
CC:
ajuma+watch_chromium.org, blink-reviews, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbroman, Justin Novosad, kinuko+watch, pdr+graphicswatchlist_chromium.org, rwlbuis, Stephen Chennney
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Optimize CompositingRecorder::endCompositing to not need an SkPictureBuilder CompositingRecorder::endCompositing has an optimization [1] to turn patterns like [..., begin compositing, drawing, end compositing] into [..., composited drawing] which takes advantage of an SkPicture recording optimization. An SkPictureBuilder is not needed in this case, as we can modify the underlying display list while creating the new composited drawing. To do this, a DCHECK in DrawingRecorder that the underlying list doesn't change has been suppressed with DisableListModificationCheck. The last user of DisableNullPaintPropertyChecks has been removed which lets us delete code from PaintChunker. [1] https://codereview.chromium.org/2186643002 BUG=628831 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Review-Url: https://codereview.chromium.org/2675773003 Cr-Commit-Position: refs/heads/master@{#447903} Committed: https://chromium.googlesource.com/chromium/src/+/424a2d302d2106dabd248ee96ab751bd54d38f1a

Patch Set 1 #

Total comments: 1

Patch Set 2 : Remove DisableNullPaintPropertyChecks too #

Patch Set 3 : Suppress drawing recorder dcheck instead of removing it #

Patch Set 4 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+51 lines, -61 lines) Patch
M third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.cpp View 1 2 3 2 chunks +16 lines, -28 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.h View 1 2 2 chunks +16 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp View 1 2 3 3 chunks +12 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintChunker.h View 1 2 chunks +0 lines, -14 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintChunker.cpp View 1 2 chunks +7 lines, -15 lines 0 comments Download

Messages

Total messages: 22 (13 generated)
pdr.
3 years, 10 months ago (2017-02-02 21:53:08 UTC) #4
chrishtr
https://codereview.chromium.org/2675773003/diff/1/third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp File third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp (left): https://codereview.chromium.org/2675773003/diff/1/third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp#oldcode78 third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp:78: DCHECK(m_displayItemPosition == This DCHECK still seems generally useful. Pass ...
3 years, 10 months ago (2017-02-02 23:52:07 UTC) #8
pdr.
On 2017/02/02 at 23:52:07, chrishtr wrote: > https://codereview.chromium.org/2675773003/diff/1/third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp > File third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp (left): > > https://codereview.chromium.org/2675773003/diff/1/third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp#oldcode78 ...
3 years, 10 months ago (2017-02-03 00:12:06 UTC) #10
chrishtr
lgtm
3 years, 10 months ago (2017-02-03 00:20:42 UTC) #11
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/2675773003/40001
3 years, 10 months ago (2017-02-03 00:23:33 UTC) #13
commit-bot: I haz the power
Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds/146660) ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, ...
3 years, 10 months ago (2017-02-03 00:25:16 UTC) #15
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/2675773003/60001
3 years, 10 months ago (2017-02-03 00:57:18 UTC) #18
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/424a2d302d2106dabd248ee96ab751bd54d38f1a
3 years, 10 months ago (2017-02-03 03:34:56 UTC) #21
danakj
3 years, 10 months ago (2017-02-03 18:14:54 UTC) #22
Message was sent while issue was closed.
Thanks so much this is so much more easy to follow. LGTM too

Powered by Google App Engine
This is Rietveld 408576698