[css-contain] Add perftest for Update Layer Tree issue
As described in crbug.com/779066 even with "contain: strict" we're visiting the whole layer tree when PaintLayer::SetNeedsCompositingInputsUpdate() is called. If we call that inside an element that has "contain: strict" we should be able to avoid visiting paint layers outside that element as they are not affected. Right now we're spending a lot of time in "Update Layer Tree" phase in this situations, calling CompositingInputsUpdater::UpdateRecursive() for all the paint layers. We should be able to do something better here thanks to strict containment. The perftest is based on an attached example on the bug, it has a huge DOM with 200x200 cells that have "contain: strict". We force a call to PaintLayer::SetNeedsCompositingInputsUpdate() in one of these cells (by changing the value overflow property), and we're visiting the whole layer tree. BUG=779066 Change-Id: Iaed26bceb9a270e1989b2dc5a9dafff3d6974f39 Reviewed-on: https://chromium-review.googlesource.com/c/1458299Reviewed-by:Chris Harrelson <chrishtr@chromium.org> Commit-Queue: Manuel Rego <rego@igalia.com> Cr-Commit-Position: refs/heads/master@{#630567}
Showing
Please register or sign in to comment