This is an investigation bug that came out of
https://chromium-review.googlesource.com/c/530093/
That patch shows ~6% regression in the everything-is-cached-on-blink record times (according to ct). It is my belief that this particular metric is primarily measuring the overhead of display item list painting operations, since the rest of the work is unchanged.
Note that when caching is disabled in blink, it quickly becomes the dominant cost and the regression is not visible there.
This bug here is to see if we can reduce the overhead by doing smarter unpacking. One approach would be:
- Store a visual rect and count and only unpack them when building the rtree.