Closed
Bug 1335149
Opened 8 years ago
Closed 8 years ago
Slow drawing on this canvas example
Categories
(Core :: Graphics, defect, P3)
Core
Graphics
Tracking
()
RESOLVED
FIXED
mozilla54
People
(Reporter: overholt, Assigned: jrmuizel, NeedInfo)
Details
(Whiteboard: [platform-rel-Google][platform-rel-GoogleSuite][platform-rel-GoogleSheets][gfx-noted])
Attachments
(3 files)
142.48 KB,
text/html
|
Details | |
167.48 KB,
image/png
|
Details | |
1.81 KB,
patch
|
bas.schouten
:
review+
gchang
:
approval-mozilla-aurora+
jcristau
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
Firefox Nightly on Windows 10 (Surface Book) takes a lot more time than Chrome (something like 55 ms vs 6 ms) to render the canvas in the test case I'll attach.
Reporter | ||
Comment 1•8 years ago
|
||
(Note that the performance is a bit difference when the grid() function is in a separate js file)
Reporter | ||
Comment 2•8 years ago
|
||
Jeff Muizelaar said we're doing a flush when we shouldn't be (see profile screenshot attached). Profile: https://clptr.io/2kk4W4s
Reporter | ||
Comment 3•8 years ago
|
||
Edgard now has a Bugzilla account so I should point out that the excellent reduced test case came from him; thanks in public, Edgard :) (Since this is related to Google Sheets performance, I'm setting platform-rel:+)
platform-rel: --- → +
Updated•8 years ago
|
Whiteboard: [platform-rel-Google][platform-rel-GoogleSuite][platform-rel-GoogleSheets]
Assignee | ||
Comment 4•8 years ago
|
||
Does this build help? https://archive.mozilla.org/pub/firefox/try-builds/jmuizelaar@mozilla.com-606f383fb5cd72971519f6bfd1e31733580767cf/try-win32/
Reporter | ||
Comment 5•8 years ago
|
||
(In reply to Jeff Muizelaar [:jrmuizel] from comment #4) > Does this build help? > https://archive.mozilla.org/pub/firefox/try-builds/jmuizelaar@mozilla.com- > 606f383fb5cd72971519f6bfd1e31733580767cf/try-win32/ Yes! With it I get 25-30 ms render times vs > 70 ms in today's nightly build (this is all Windows 10 on a Surface Book). I still get < 10 ms in Chrome and ~45-50 ms in Edge.
Assignee | ||
Comment 6•8 years ago
|
||
Bas, does this seem sane to you?
Attachment #8832496 -
Flags: review?(bas)
Assignee | ||
Comment 7•8 years ago
|
||
(In reply to Andrew Overholt [:overholt] from comment #5) > (In reply to Jeff Muizelaar [:jrmuizel] from comment #4) > > Does this build help? > > https://archive.mozilla.org/pub/firefox/try-builds/jmuizelaar@mozilla.com- > > 606f383fb5cd72971519f6bfd1e31733580767cf/try-win32/ > > Yes! With it I get 25-30 ms render times vs > 70 ms in today's nightly build > (this is all Windows 10 on a Surface Book). > I still get < 10 ms in Chrome and ~45-50 ms in Edge. Chrome, afaik, defers canvas rendering so the Chrome times don't actually include the rendering time. This means to do a fair comparison, the benchmark should actually be painting in a loop or at least trying to maintain 60fps and seeing how close it can get.
Reporter | ||
Comment 8•8 years ago
|
||
Edgard, see comment 7 above from Jeff. What do you think?
Flags: needinfo?(edgard)
(In reply to Jeff Muizelaar [:jrmuizel] from comment #6) > Created attachment 8832496 [details] [diff] [review] > Remove flushes that I don't think we need > > Bas, does this seem sane to you? Is this change OK with SkiaGL (Mac/Android)?
Updated•8 years ago
|
Priority: -- → P3
Whiteboard: [platform-rel-Google][platform-rel-GoogleSuite][platform-rel-GoogleSheets] → [platform-rel-Google][platform-rel-GoogleSuite][platform-rel-GoogleSheets][gfx-noted]
Comment 10•8 years ago
|
||
Comment on attachment 8832496 [details] [diff] [review] Remove flushes that I don't think we need Review of attachment 8832496 [details] [diff] [review]: ----------------------------------------------------------------- I don't see a problem with this.
Attachment #8832496 -
Flags: review?(bas) → review+
Comment 11•8 years ago
|
||
Pushed by jmuizelaar@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/90df369672f6 Remove unnecessary flush() calls from canvas implementation.
Comment 12•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/90df369672f6
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
Comment 13•8 years ago
|
||
Jeff, do you think this flush() fix is worth uplifting to Aurora or Beta?
Assignee: nobody → jmuizelaar
status-firefox51:
--- → wontfix
status-firefox52:
--- → ?
status-firefox53:
--- → ?
Flags: needinfo?(jmuizelaar)
Assignee | ||
Comment 14•8 years ago
|
||
Sure, let's up lift it. It's easy to back out if we find problems.
Flags: needinfo?(jmuizelaar)
Assignee | ||
Comment 15•8 years ago
|
||
Comment on attachment 8832496 [details] [diff] [review] Remove flushes that I don't think we need Approval Request Comment [Feature/Bug causing the regression]: None particular [User impact if declined]: Slower Google Sheets performance [Is this code covered by automated tests?]: Yes it should be. [Has the fix been verified in Nightly?]: Yes. [Needs manual test from QE? If yes, steps to reproduce]: Nope [List of other uplifts needed for the feature/fix]: [Is the change risky?]: It could potentially result in some wrong rendering in some situations but I don't know what they would be. [Why is the change risky/not risky?]: If we're somehow depending on the flushes for some reason. [String changes made/needed]: None
Attachment #8832496 -
Flags: approval-mozilla-beta?
Attachment #8832496 -
Flags: approval-mozilla-aurora?
Updated•8 years ago
|
Comment 16•8 years ago
|
||
Comment on attachment 8832496 [details] [diff] [review] Remove flushes that I don't think we need Fix slow Google Sheets performance. Take it in aurora first. Aurora53+.
Attachment #8832496 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 17•8 years ago
|
||
bugherder uplift |
https://hg.mozilla.org/releases/mozilla-aurora/rev/c73bb9843d79
Is the canvas retained mode (or whatever it's called) kicking in for Chrome?
Assignee | ||
Comment 19•8 years ago
|
||
(In reply to Milan Sreckovic [:milan] from comment #18) > Is the canvas retained mode (or whatever it's called) kicking in for Chrome? I think this is always the case.
Assignee | ||
Comment 20•8 years ago
|
||
Release Note Request (optional, but appreciated) [Why is this notable]: Has a significant impact on Google Sheets performance [Affects Firefox for Android]: Possibly at little bit [Suggested wording]: Improve canvas text drawing performance. [Links (documentation, blog post, etc)]:
relnote-firefox:
--- → ?
Comment 21•8 years ago
|
||
Comment on attachment 8832496 [details] [diff] [review] Remove flushes that I don't think we need fix a perf issue affecting google sheets, beta52+
Attachment #8832496 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment 22•8 years ago
|
||
Hoping QE can do some testing around google sheets with 52.0b9 on Friday, so ni?avaida.
Flags: needinfo?(andrei.vaida)
Comment 23•8 years ago
|
||
uplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/e2a6d2b4f1b4b8e0c77d057bc012fb20a18df2f5
Comment 24•8 years ago
|
||
bugherder uplift |
https://hg.mozilla.org/releases/mozilla-esr52/rev/e2a6d2b4f1b4
status-firefox-esr52:
--- → fixed
Comment 25•8 years ago
|
||
(In reply to Julien Cristau [:jcristau] from comment #22) > Hoping QE can do some testing around google sheets with 52.0b9 on Friday, so > ni?avaida. Will be covered as part of 52.0b9-build2 sign off, today. We'll follow up with test results as soon as possible -- leaving the ni? in place until this is done.
Flags: qe-verify+
Comment 26•8 years ago
|
||
(In reply to Andrei Vaida, QA [:avaida] – please ni? me from comment #25) > (In reply to Julien Cristau [:jcristau] from comment #22) > > Hoping QE can do some testing around google sheets with 52.0b9 on Friday, so > > ni?avaida. > > Will be covered as part of 52.0b9-build2 sign off, today. We'll follow up > with test results as soon as possible -- leaving the ni? in place until this > is done. This is done, Regression and Exploratory Testing around Google Spreadsheets on 52.0b9-build2 uncovered no issues. Platforms covered: Windows 10 x86, Windows 8.1 x86, macOS 10.12.3 and Ubuntu 16.04 x64.
Comment 27•7 years ago
|
||
This fix shipped in 52, so I don't think it should go into 52 release notes.
You need to log in
before you can comment on or make changes to this bug.
Description
•