Closed
Bug 1309643
Opened 8 years ago
Closed 7 years ago
-99.8% performance regression in Firefox Nightly in In Limbo WebGL 2 demo on August 3rd (in emunittests suite)
Categories
(Core :: Graphics: CanvasWebGL, defect, P1)
Tracking
()
RESOLVED
FIXED
mozilla53
People
(Reporter: jujjyl, Assigned: jgilbert)
References
Details
(Keywords: perf, Whiteboard: [gfx-noted])
Attachments
(2 files)
2.57 MB,
image/png
|
Details | |
58 bytes,
text/x-review-board-request
|
ethlin
:
review+
gchang
:
approval-mozilla-aurora+
gchang
:
approval-mozilla-beta+
|
Details |
After August 3rd on my Mac Pro workstation with OS X El Capitan 10.11.6 Mac Pro (Late 2013) 3.5 GHz 6-core Intel Xeon E5 24GB DDR3 RAM AMD FirePro D500 3072MB the In Limbo WebGL 2 demo has regressed from running at 30fps to taking about 20 seconds to render a single frame. Bisecting mozilla-central gives the following range: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=8c1c9706029249b5a94e64a39d0abe0b6fee0408&tochange=6608e5864780589b25d5421c3d3673ab30c4c318 and bisecting manually further on gecko-dev on github points to the following commit that introduces the regression: 9125182b214272cda9e2737bbecb67cfe922771a is the first bad commit commit 9125182b214272cda9e2737bbecb67cfe922771a Author: Jeff Gilbert <jgilbert@mozilla.com> Date: Tue Jul 26 20:05:45 2016 -0700 Bug 1289655 - Add primitive restart for WebGL 2. - r=mtseng MozReview-Commit-ID: 6SfI8yfROGI
Assignee | ||
Comment 1•8 years ago
|
||
Wow, can you profile this and see if anything sticks out? My only guess is that primitive restart has terrible support on your system, and we should blacklist it.
Reporter | ||
Comment 3•7 years ago
|
||
Performance hotspot via OS X profiler.
Reporter | ||
Comment 4•7 years ago
|
||
More info about this (discussed in face to face triaging with Jeff last week): - the demo does not use primitive restart, i.e. the performance impact occurs on all WebGL 2 content, independent of whether restarting is active. - based on the reported duplicate bug 1318010, can occur on both Intel and AMD GPUs on OS X. - profiling showed the hotspot to be in the OS X driver side and not directly in Firefox code (screenshot in above comment). - assumption is that primitive restart might not be efficient on some Mac GPUs, or that it is being activated in an expensive way, though this was not conclusive. - dire enough issue to be treated as a release blocker for WebGL 2. - last known good Firefox version before this regression can be downloaded from https://ftp.mozilla.org/pub/firefox/nightly/2016/08/2016-08-01-03-02-27-mozilla-central/ for easy triaging of other WebGL 2 performance issues that are suspected to be caused by this same root problem. - early known bad Firefox version a couple of days after this regression started can be downloaded from https://ftp.mozilla.org/pub/firefox/nightly/2016/08/2016-08-07-03-02-01-mozilla-central/ for triaging purposes.
Reporter | ||
Updated•7 years ago
|
Severity: normal → blocker
Priority: P4 → P1
Reporter | ||
Comment 5•7 years ago
|
||
Marking as P1 blocker for upcoming planned WebGL 2 release, since this practically will prevent WebGL 2 from working on OS X.
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → jgilbert
Assignee | ||
Updated•7 years ago
|
Blocks: webgl2-blockers
Comment hidden (mozreview-request) |
Assignee | ||
Comment 7•7 years ago
|
||
With this patch, we seem to be at parity with Chrome Canary.
Comment 8•7 years ago
|
||
mozreview-review |
Comment on attachment 8819466 [details] Bug 1309643 - Only enable primitive restart index on OSX for DrawElements. - https://reviewboard.mozilla.org/r/99230/#review99756
Attachment #8819466 -
Flags: review?(ethlin) → review+
Assignee | ||
Updated•7 years ago
|
status-firefox50:
--- → disabled
status-firefox51:
--- → affected
status-firefox52:
--- → affected
status-firefox53:
--- → affected
Assignee | ||
Comment 9•7 years ago
|
||
Comment on attachment 8819466 [details] Bug 1309643 - Only enable primitive restart index on OSX for DrawElements. - Approval Request Comment [Feature/Bug causing the regression]: webgl2 [User impact if declined]: [Is this code covered by automated tests?]: [Has the fix been verified in Nightly?]: [Needs manual test from QE? If yes, steps to reproduce]: [List of other uplifts needed for the feature/fix]: [Is the change risky?]: [Why is the change risky/not risky?]: [String changes made/needed]:
Attachment #8819466 -
Flags: approval-mozilla-beta?
Attachment #8819466 -
Flags: approval-mozilla-aurora?
Comment 10•7 years ago
|
||
Pushed by jgilbert@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/285af1bbbd7a Only enable primitive restart index on OSX for DrawElements. - r=ethlin
Comment 11•7 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/285af1bbbd7a
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
Comment 12•7 years ago
|
||
Comment on attachment 8819466 [details] Bug 1309643 - Only enable primitive restart index on OSX for DrawElements. - Fix WebGL2 related issue. Beta51+ & Aurora52+. Should be in 51 beta 10.
Attachment #8819466 -
Flags: approval-mozilla-beta?
Attachment #8819466 -
Flags: approval-mozilla-beta+
Attachment #8819466 -
Flags: approval-mozilla-aurora?
Attachment #8819466 -
Flags: approval-mozilla-aurora+
Comment 13•7 years ago
|
||
Check-in: https://hg.mozilla.org/releases/mozilla-aurora/rev/617286d6483d - Jeff Gilbert - Bug 1309643 - Only enable primitive restart index on OSX for DrawElements. - r=ethlin. a=gchang
Comment 14•7 years ago
|
||
Check-in: https://hg.mozilla.org/releases/mozilla-beta/rev/a494ef6345a0
You need to log in
before you can comment on or make changes to this bug.
Description
•