Chromium Code Reviews
DescriptionStore paint properties directly on LayoutObject
This patch removes the temporary map that was used to avoid changing
the size of LayoutObject. This is in preparation for launching
property trees.
On profiles, the paint property map lookup is the hottest function
when running the paint-offset-change benchmark. On blink.perf, this
patch is a large improvement on all benchmarks[1]:
color-changes.html: -3.78%
large-table-background-change-with-invisible-collapsed-borders.html: -30.77%
large-table-background-change-with-visible-collapsed-borders.html: 0%
large-table-collapsed-border-change.html: -8.61%
large-table-collapsed-border-change-with-backgrounds.html: -10.09%
large-table-collapsed-border-change-with-text.html: -13.9%
large-table-repaint.html: -14.28%
paint-offset-changes.html: -5.05%
transform-changes.html: -1.62%
[1] tools/perf/run_benchmark blink_perf.paint --browser=content-shell-release --pageset-repeat=3 --extra-browser-args=--enable-slimming-paint-v2
BUG=645667
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Committed: https://crrev.com/3a5ab90f66206a967a646707dbdacb92b57bccc5
Cr-Commit-Position: refs/heads/master@{#431643}
Patch Set 1 #Patch Set 2 : rebase #Patch Set 3 : rebase #
Messages
Total messages: 24 (16 generated)
|
||||||||||||||||||||||||||||