Open Bug 832694 Opened 11 years ago Updated 2 years ago

Over invalidation of SVG with filters embedded via <object> while scrolling the Shadow DOM spec

Categories

(Core :: SVG, defect)

x86_64
Linux
defect

Tracking

()

People

(Reporter: jdm, Unassigned)

References

()

Details

(Keywords: perf, Whiteboard: [in-the-wild][invalidation][gaussian blur filters][Snappy])

I didn't check the SVG itself, but visually it looks like it's been generated by OmniGraffle, which has a tendency to generate blur filters that cover much more of the canvas than is necessary.
FWIW, both Opera12.12 and IE10RC are janky on this page, with and without HWA.
Many elements in the drawing I looked at (http://www.w3.org/TR/2012/WD-shadow-dom-20120522/shadow-dom-subtrees.svg) seem to have two gaussian blurs applied, one to the element in a <defs> section which is then used by a <use> element which also has a slightly different blur applied.
FWIW, i think IE10 is using some GPU too for the SVG blurring. Using GPU-z, I can see spikes in GPU usage when scrolling over those SVG's
Keywords: perf
Whiteboard: [Snappy] [needs profiliing] → [Snappy] [needs profiliing] [in-the-wild]
We're doing lots of needless repainting.
Summary: Awful scrolling performance on Shadow DOM spec → Awful scrolling performance on Shadow DOM spec due to invalidating SVG that is fully in the viewport
Whiteboard: [Snappy] [needs profiliing] [in-the-wild] → [Snappy][in-the-wild][invalidation]
Markus and others did a bunch of work to speed up filters and on my machine we now scroll without noticeable jank, but the unnecessary invalidation is still happening so there may still be issues on lower spec machines.
Summary: Awful scrolling performance on Shadow DOM spec due to invalidating SVG that is fully in the viewport → Over invalidation of SVG with filters embedded via <object> while scrolling the Shadow DOM spec
Whiteboard: [Snappy][in-the-wild][invalidation] → [in-the-wild][invalidation][gaussian blur filters][Snappy]
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.