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

Issue 606683 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Investigate performance problems for 'HTML suite > CSS bouncing SVG images' benchmark

Project Member Reported by dk...@chromium.org, Apr 26 2016

Issue description

All benchmarks are under pr.gg/animometer/developer.html

- Set "Ramp" mode for benchmarking.
- Set "Keep at a fixed complexity" for profiling.  Set an appropriate [high] complexity next to each test's name.

File any performance bugs found as blocking this issue.
 

Comment 1 by dk...@chromium.org, Apr 27 2016

Owner: meade@chromium.org
Status: Assigned (was: Untriaged)
Sampling profile from z840.

Complexity set to 100. Profiling build with extensions disabled.

https://drive.google.com/file/d/0B9rpPoIDv3vTbmhLUDQ2ejk2RGs/view?usp=sharing

Comment 3 Deleted

Complexity 1000 with img { will-change: transform; }
trace.json.gz
1012 KB Download
Complexity 1000, without will-change.
trace.json.gz
1.8 MB Download

Comment 6 by meade@chromium.org, Apr 28 2016

Cc: dstockwell@chromium.org timloh@chromium.org
Looking at the traces that doug attached, a lot of time is being spent in rastering

39.27 SkRasterClip::setPath
>>>27.87 SuperBlitter::flush
28.51 SkAAClip::op

so we tried it with will-change to turn off raster. Visually, this improves the framerate dramatically (from around 2 to something much smoother). In this case, it spends 65.43% in SkRasterClip::op. It also then spends 7.37% in blink::FrameView::synchronizedPaint, 5.65 in blink::FrameView::updateStyleAndLayoutIfNeededRecursive, 2.52 in blink::FrameView::invalidateTreeIfNeededRecursive




Out of interest, I also tried running the basic benchmark on "Ramp" on various browsers on my MacBook Air (13-inch, Mid 2012)

Chrome canary (52.0.27180.0): 23.77, 20.53, 17.35, 22.18, 16.55 (avg: 20.08)
Firefox (45.0): 140.13, 179.0, 140.79, 171.33, 111.77 (avg: 148.60)
Safari: 13.45, 11.43, 11.72, 8.78, 11.26 (avg: 11.33)

I then checked out a copy of WebKit and modified the benchmark to use will-change: transform on img as above, and the scores were

Chrome canary: 393.60, 401.56, 363.93, 426.39. 383.22 (avg: 393.74)
Firefox: 155.35, 174.75, 168.39, 175.67, 153.08 (avg: 165.45)
Safari: 451.14, 515.60, 432.27, 476.33, 535.57 (avg: 482.18)

So all browsers show an improvement with will-change, but Safari manages to come out on top.




FYI, as far as we can see, one of the main aims of these Animometer benchmarks
is to exercise the raster system, so comment 6 is somewhat beside the point.

Re data on rastering:

39.27 SkRasterClip::setPath
>>>27.87 SuperBlitter::flush
28.51 SkAAClip::op

Is there a Skia bug to be filed here? Did you try with Ganesh?

Comment 8 by dk...@chromium.org, May 18 2016

Do we have any idea why our rastering is so much slower here? (ignoring the speed up from will-change)

Comment 9 by meade@chromium.org, Jun 3 2016

Cc: meade@chromium.org
Owner: dk...@chromium.org
I've been busy, then away for the past 3 weeks, so I haven't had a chance to look further at this. Als I don't really know what I'm doing, and I'm about to go traveling again, so could you please find a more appropriate owner for this Dru?
Owner: chrishtr@chromium.org
assigning to Chris in case he sees any additional opportunities here, although I think we've largely reached the point of diminishing returns on these investigations. Correct me if I'm wrong Chris :)
Owner: ----
Status: Available (was: Assigned)
Nthing more from me, though I have been slammed with other work recently and
have not dug in a lot of detail.

Comment 12 Deleted

Comment 13 Deleted

Labels: -Pri-1 PaintTeamRetriaged-20170310 Pri-2
Status: Available (was: Untriaged)
Project Member

Comment 15 by sheriffbot@chromium.org, Apr 13 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Untriaged)
Time to retire this one.

Sign in to add a comment