Closed Bug 1149954 Opened 5 years ago Closed 5 years ago

Significant performance regression on the certain demo without HWA.

Categories

(Core :: Graphics: Layers, defect)

38 Branch
x86_64
Windows 7
defect
Not set

Tracking

()

VERIFIED FIXED
mozilla40
Tracking Status
firefox37 --- unaffected
firefox38 + verified
firefox39 + verified
firefox40 + verified

People

(Reporter: alice0775, Assigned: milan)

References

()

Details

(Keywords: perf, regression, Whiteboard: gfx-noted)

Attachments

(1 file)

Significant performance regression on the test[1] without HWA.

[1]https://developer.mozilla.org/media/uploads/demos/p/a/paulrouget/8bfba7f0b6c62d877a2b82dd5e10931e/hacksmozillaorg-achi_1334270447_demo_package/HWACCEL/

30fps+ on Firefox37 With HWA
  0fps on Firefox38 without HWA
oops,
30fps+ on Firefox37.0 without HWA
  0fps on Firefox38b1 without HWA


Regression pushlog:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=d94b6a6469b4&tochange=cbcafb38ad62
Reproduced on windows7 Sp1 Windows8.1 update and Windows10TP10049.
Not reproduced on ubuntu14.04.
Not tested on Mac.

Via local build
Last Good: 08434d415b5c
First Bad: fcb277a52bdd

Regressed by:
fcb277a52bdd	George Wright — Bug 1042291 - Add a CanvasDrawObserver which observes the first few seconds/frames of a Canvas2D's lifetime to determine using a heuristic if it should be software or GPU backed. r=gw280, r=snorp


FYI,
Gecko profiler does not work well. Because if Gecko Profiler installed, the demo is working fine.
Blocks: 1042291
Component: General → Graphics: Layers
Flags: needinfo?(milan)
Keywords: regression
It was fixed when it was in Aurora37.0a2 cycle (and maybe it was in Beta36 cycle). 
However, unfortunately, It has not been fixed in Nightly 38 and later.

Fixed range(aurora)
https://hg.mozilla.org/releases/mozilla-aurora/pushloghtml?fromchange=5a89d54ef5e9&tochange=81a5207ffc75

Fixed by Bug 1124249 in in Aurora37.0a2 and Beta36 only
Depends on: 1124249
I hate uplifts.  Bug 1124249 never landed in trunk (38 at the time.)  Will get a 38-40 patch.
Assignee: nobody → milan
Flags: needinfo?(milan)
Whiteboard: gfx-noted
Tracking for 38+.  
Once we land this on m-c it would be good to get extra verification from QE.
Flags: qe-verify+
Flags: needinfo?(florin.mezei)
https://hg.mozilla.org/mozilla-central/rev/e6757cd28df3
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla40
Comment on attachment 8586935 [details] [diff] [review]
Only Skia canvases need be considered for acceleration. Carry r=jmuizelaar from bug 1124249

Approval Request Comment
[Feature/regressing bug #]:
[User impact if declined]: 13% of beta crashes.
[Describe test coverage new/current, TreeHerder]:
[Risks and why]: We shouldn't be going into SkiaGL on the desktop, so this just enforces it.
[String/UUID change made/needed]: n/a

This got fixed in bug 1124249 during 38, but only landed on 36 and 37, and never on 38.  Now that it has landed on 40, we want to make sure we plug in the gap and land it on 38 and 39.  It already went through the previous beta as 37, so the risk should be small.
Attachment #8586935 - Flags: approval-mozilla-beta?
Attachment #8586935 - Flags: approval-mozilla-aurora?
I verified this fix on:

FF 40
Build id: 20150406030204
OS: Win 7 x64, Ubuntu 14.04 x64

However the verification on Mac Os X was not possible due to bug 1151492
Flags: needinfo?(florin.mezei)
Comment on attachment 8586935 [details] [diff] [review]
Only Skia canvases need be considered for acceleration. Carry r=jmuizelaar from bug 1124249

Fix a top crash, taking it. Should be in 38 beta 2 (likely) or 3 (worst case scenario)
Attachment #8586935 - Flags: approval-mozilla-beta?
Attachment #8586935 - Flags: approval-mozilla-beta+
Attachment #8586935 - Flags: approval-mozilla-aurora?
Attachment #8586935 - Flags: approval-mozilla-aurora+
1fps using Firefox 38 beta 1 under Win 7 64-bit.
29+pfs using Firefox 38 beta 2
30fps with latest Aurora 39.0a2
29+fps with latest Nightly 40.0a1
You need to log in before you can comment on or make changes to this bug.