commit | aee7fd84efbd6b44ab8b448b8fefefa404bf6a2c | [log] [tgz] |
---|---|---|
author | Xianzhu Wang <wangxianzhu@chromium.org> | Mon May 17 23:58:44 2021 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon May 17 23:58:44 2021 |
tree | 07c887b1754bc2d1eb1fb9e29afe5bc77c276575 | |
parent | 87c5394c76f09f99aea89b8fcf4766de4dcece18 [diff] |
Move the whole subsequence subtree when moving a cached subsequence For the following cached subsequence tree: Subsequence A Subsequence A1 Subsequence A2 previously, during a paint, when A could use cache, we moved the paint chunks and display items from cache for A, but didn't keep A1 or A2. During the next paint, if something under A2 changed, we had to repaint the whole A because we didn't have information about A1 or A2. Now when moving A, keep A1 and A2 so that if one of them changes while another doesn't, we can use cache for the unchanged one. This improves performance of record_time_small_invalidation by 25%: https://ct.skia.org/results/cluster-telemetry/tasks/chromium_perf_runs/wangxianzhu-ChromiumPerf-5812/html/index.html Bug: 917911 Change-Id: I29dde93c08496a0a9fa507d2db30291552426965 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2885012 Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org> Reviewed-by: Philip Rogers <pdr@chromium.org> Cr-Commit-Position: refs/heads/master@{#883716}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.