New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 595465 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 589525
Owner:
Closed: Mar 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Performance issue: d3 svg rendering regression

Reported by rjmcn...@mtu.edu, Mar 16 2016

Issue description

Chrome Version       : 48.0.2564.103 (64-bit) vs 49.0.2623.87 (64-bit)
Operating System and Version: OSX 10.9.5
URLs (if applicable) : http://jsfiddle.net/x3xp7yt1/6/

Description of performance problem:

I'm noticing a regression in how svgs are rendered, specifically an svg created by d3 with zooming / panning functionality, but I doubt it matters how the svg was created. See the following jsfiddle: http://jsfiddle.net/x3xp7yt1/6/. 100 "nodes" are added with some random text via d3. Panning and zooming on the 48 version is very smooth, whereas panning and zooming on the 49 version is very choppy and slow. See the attached videos, I tried to perform roughly the same actions. I've also attached performance traces where I did roughly the same actions on both chrome versions. 

If needed, I can cut back the example and remove the use of d3 (since I suspect the regression is all about how svgs get rendered). I left the use of d3 in because it allows panning / zooming which makes the regression easier to notice.

Increasing the length of the text in each node enhances the regression.

Thanks!

 
chrome-49-performance.mov
3.6 MB Download
chrome-48-performance.mov
10.6 MB Download
trace_chrome-48-svg-perf.json.gz
5.1 MB Download
trace_chrome-49-svg-perf.json.gz
3.2 MB Download
Cc: rnimmagadda@chromium.org
Components: Blink>Rendering
Labels: -Type-Bug M-50 OS-Linux OS-Mac OS-Windows Type-Bug-Regression
Owner: dcheng@chromium.org
Status: Assigned (was: Unconfirmed)
====================================

Good Build:

49.0.2573.0    Base Position: 361233


Bad Build:

49.0.2575.0    Base Position: 361776

=====================================

Able to repro this issue on Windows 7, MAC (10.11.3) & Ubuntu Trusty (14.04) for the Google Chrome Stable Version - 49.0.2623.87

This is a regression issue broken in M49, below mentioned is the bisect info:

CHANGELOG URL: https://chromium.googlesource.com/chromium/src/+log/20f3b2d0ee459ed4d743ce9cd8c95417d74f6d04..fa7fc32c5940dfd3d734ed3231b1295da4c3303e

Suspecting Commit: 8844981696a05f72b6814771a74bec4e410ad71e		

Review URL: https://codereview.chromium.org/1469583002

@dcheng: Could you please look into the issue, and if it has nothing to do with your changes and if possible please do assign it to the concerned owner.

Note: Issue not reproduced on Chrome Canary Version - 

Thank you.
Cc: aerotwist@chromium.org jakearchibald@chromium.org chrishtr@chromium.org
I'm getting separate reports of this from a partner, and it turns their experience from smooth to ~10fps on Chrome for Android.
Owner: pdr@chromium.org
The cause is almost certainly https://chromium.googlesource.com/chromium/src/+/fa7fc32c5940dfd3d734ed3231b1295da4c3303e (complex text).

Sending to pdr, as I think this is a dup of the other bugs he's working on.

Comment 5 by amin...@google.com, Mar 17 2016

Labels: ReleaseBlock-Stable M-49
Discussion offline and comments here indicate we should likely get this fixed in an M49 respin.  Tagging as a stable blocker there.

Comment 6 by amin...@google.com, Mar 17 2016

Labels: -Pri-2 Pri-1

Comment 7 by amin...@google.com, Mar 17 2016

Labels: OS-Android

Comment 8 by pdr@chromium.org, Mar 17 2016

Mergedinto: 589525
Status: Duplicate (was: Assigned)
Thanks for taking the time to file this rjmcnama@mtu.edu.

This is indeed  https://crbug.com/589525  ( https://crbug.com/589525#c23  is the tl;dr). I will be merging a partial fix for this into M49 today.

Comment 9 by rjmcn...@mtu.edu, Mar 17 2016

Thanks! Which chrome release will this be getting in to? The next 49 one?

Comment 10 by pdr@chromium.org, Mar 18 2016

This will be in the next M49 push but it's hard to say a concrete date because they don't all go out at once.

This is only a partial fix unfortunately. It knocks the constant factor down but we will still have quadratic behavior until M51. If have a real page affected by this bug, I'd love to hear if it is any better or worse next week (please reply in  https://crbug.com/589525 ). I'll include your feedback in deciding what to do for M50 (currently beta).
There's been a performance regression on https://jakearchibald.github.io/svgomg/ too, is this the same issue? (go to the demo image and zoom in)

Comment 12 by pdr@chromium.org, Mar 19 2016

@jakearchibald, I think that is a separate issue :'( I've filed a new bug at https://crbug.com/596253. If you have any additional info, please add it to the bug.

Comment 13 by tkent@chromium.org, Mar 23 2016

Components: -Blink>Rendering Blink>Layout

Sign in to add a comment