| Summary: | Optimize style resolution for animations | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> | ||||||
| Component: | CSS | Assignee: | Nobody <webkit-unassigned> | ||||||
| Status: | NEW --- | ||||||||
| Severity: | Normal | CC: | graouts, koivisto, simon.fraser, webkit-bug-importer | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | Safari Technology Preview | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
Created attachment 390187 [details]
Testcase
With 500 animating elements, style resolve time exceeds paint time. |
Created attachment 390186 [details] Animation test Animations (both old and new) currently invalidate style on the element every frame, which triggers a full TreeResolver::resolve() which is expensive. In the attached testcase, TreeResolver::resolve() is 14% of CPU time. We should optimize style resolution with a type of invalidation for animations.