Canvas Performance Regression Chrome 65.0.3325.146

613 views
Skip to first unread message

Dan Prince

unread,
Mar 11, 2018, 10:25:01 AM3/11/18
to Chromium-discuss
The canvas performance after I upgraded to the most recent version of Chrome has had a very serious regression (see attached profile) when running on my Macbook Air.

Making a drawImage call in a requestAnimationFrame loop is running at ~10FPS when it would usually run comfortably at 60FPS on this hardware.

The performance hit seems to be because of the amount of painting work chrome seems to be doing in between draw calls.














 
For reference, this is running with the accelerated 2d canvas flag enabled. It runs even slower without it. I can also recreate this in (67.0.3368.0 (Official Build) canary (64-bit)).

Seeing as many of the critical applications I develop both at work and in my spare time depend on fast canvas performance, I could really do with resolving this as soon as possible. Has anyone else run into this regression? Is this on the timeline for being patched and in the meantime is there a way to downgrade to an earlier version of Chrome?


Profile-Canvas-Regression

David Lu

unread,
Mar 18, 2018, 4:08:03 AM3/18/18
to Chromium-discuss
Also hitting this issue: https://www.linerider.com/?forceCanvas

It uses two canvases, so that makes the performance regression two times worse.

However, using an external monitor, the regression goes away, so this issue seems specific to Macbook retina displays, or maybe hi-dpi displays in general. Decreasing the canvas size to something like 600x500 also resolves the issue.

Workaround: test the DPI and severely decrease the resolution of the canvas.

Adam Chace

unread,
Mar 19, 2018, 3:53:09 PM3/19/18
to Chromium-discuss
Has anyone opened a defect for this yet?  It seems to rise to the level of needing one.

Mikael Nordenberg

unread,
Mar 22, 2018, 7:49:00 AM3/22/18
to Chromium-discuss
I have been struck by this issue also.
We rely on canvas for rendering our analysis views, and that part of the application is now a pain to use.
I first discovered it on my external monitor though. But on the retina-screen, it is orders of magnitude more severe.

dxq...@gmail.com

unread,
Mar 26, 2018, 8:30:44 AM3/26/18
to Chromium-discuss
I also find this question. In my project, i use two canvases in the same way, when the canvases are bigger then 1000*100, it is very slow. 

when I use the dev-tools, I find that "composite Layers" is the most expensive and it cost 90% of overall


Snip20180326_1.png

David Lu

unread,
Mar 30, 2018, 11:45:47 PM3/30/18
to Chromium-discuss
check chrome://gpu/

on intel graphics card (for me, Intel HD Graphics 4000 OpenGL Engine), canvas is not hardware accelerated. THIS IS A REGRESSION
(compare with nvidia, which is hardware accelerated.)

Graphics Feature Status

  • Canvas: Software only, hardware acceleration unavailable

On Sunday, March 11, 2018 at 10:25:01 AM UTC-4, Dan Prince wrote:

adr...@holovaty.com

unread,
Apr 2, 2018, 3:27:28 AM4/2/18
to Chromium-discuss
I'm also experiencing this on my Mac. *Not* with a retina screen, for what it's worth. It's approaching showstopper territory for me, as it makes my product quite sluggish in Chrome. :-( Other browsers on the same machine are nice and snappy when viewing the same pages.

The site is soundslice.com (example URL: https://www.soundslice.com/slices/twMNc/), which uses several large <canvas> elements to render music notation.

I believe this is the appropriate bug report in the Chromium bug tracker: https://bugs.chromium.org/p/chromium/issues/detail?id=822417

Adrian

Ken Russell

unread,
Apr 2, 2018, 4:30:32 PM4/2/18
to adr...@holovaty.com, Chromium-discuss
If you are seeing this issue then please provide the contents of the about:gpu page on http://crbug.com/822417 . My best guess is that you are running an old version of macOS (10.11 or earlier) and that you are running into a bug in the graphics driver which affected Chromium's rendering. If so you should upgrade to 10.12 or 10.13.


--
--
Chromium Discussion mailing list: chromium...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-discuss

Reply all
Reply to author
Forward
0 new messages