New issue
Advanced search Search tips

Issue 644146 link

Starred by 5 users

Issue metadata

Status: Assigned
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug



Sign in to add a comment

CSS animated inline SVG very slow/expensive compared to CSS animated HTML

Project Member Reported by cdata@google.com, Sep 6 2016

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36

Example URL:
http://output.jsbin.com/lonuzux/2

Steps to reproduce the problem:
1. Visit repro site http://output.jsbin.com/lonuzux/2
2. Measure FPS, or take timeline recording, and note sub-optimal performance

What is the expected behavior?
An equivalent animation sequence with almost twice the nodes, but constructed out of HTML instead of inline SVG, can be found here: http://output.jsbin.com/nepudis/3

Note that the render performance on this equivalent demo is significantly better (to the naked eye on many devices), even though it uses mostly the same CSS animations as the repro case and has more nodes.

What went wrong?
Performance of animating SVG appears to be sub-optimal.

Please find attached a trace of the animation running the SVG repro case on a Nexus 6.

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? N/A 

Chrome version: 52.0.2743.116  Channel: n/a
OS Version: OS X 10.11.6
Flash Version: Shockwave Flash 22.0 r0
 

Comment 1 by tkent@chromium.org, Sep 6 2016

Components: -Blink Blink>SVG Blink>Animation
Project Member

Comment 2 by sheriffbot@chromium.org, Sep 6 2016

Labels: Hotlist-Google
Owner: f...@opera.com
Status: Assigned (was: Unconfirmed)
fs, could you try to repro this on machines you have access to? Assign back to me if you can't repro.

Comment 4 by f...@opera.com, Sep 6 2016

The obvious elephant is that in the HTML case the brunt of the work is handled by the compositor, while in the SVG case it isn't. So there'll be layout, paint and raster per-frame in the latter case. (The two latter being the costly ones - at least on my laptop.)
Components: -Blink>Animation
Removing Blink>Animation component as this is not currently being owned by the Blink animation team. Feel free to reassign if appropriate.

Comment 6 by pdr@chromium.org, Sep 26 2016

Labels: allpublic

Sign in to add a comment