consider lowering dom.timeout.max_consecutive_callbacks pref in fennec

RESOLVED FIXED in Firefox 54

Status

()

Core
DOM
RESOLVED FIXED
10 months ago
10 months ago

People

(Reporter: bkelly, Assigned: bkelly)

Tracking

unspecified
mozilla54
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox-esr45 unaffected, firefox51 unaffected, firefox52 wontfix, firefox-esr52 wontfix, firefox53 affected, firefox54 fixed)

Details

Attachments

(1 attachment)

(Assignee)

Description

10 months ago
In bug 1342854 we increased the timer coalesce limit from 1 to 5.  This makes the page animation run better in desktop, but it actually makes things worse in fennec.  On android I see:

* In FF51 with no timer yielding (no coalesce limit) the audio is janked the entire time.
* In FF52 beta build with yielding after every timer (limit 1) the audio is not janked at all and the page renders smoothly (and quickly)
* In FF53 aurora build with limit 5 (effecitvely 6) the audio alternates between playing and being janked

Allowing 3 consecutive callbacks seems to work best on my nexus 5x.  Barring another site to tune for I think this is a reasonable value.  JS is going to run slower, so allowing fewer callbacks makes sense.
(Assignee)

Comment 1

10 months ago
I think we should tune this in FF53, but not worth uplifting to FF52.
status-firefox51: --- → unaffected
status-firefox52: --- → wontfix
status-firefox53: --- → affected
status-firefox54: --- → affected
status-firefox-esr45: --- → unaffected
status-firefox-esr52: --- → wontfix
Depends on: 1343877
(Assignee)

Comment 2

10 months ago
Created attachment 8842900 [details] [diff] [review]
Tune dom.timeout.max_consecutive_callbacks on fennec. r=smaug

This tunes the fennec pref down to 3 based on my local testing.  I also added the pref to the default all.js pref file to make it easier for people to find the default on other platforms.
Attachment #8842900 - Flags: review?(bugs)
Comment on attachment 8842900 [details] [diff] [review]
Tune dom.timeout.max_consecutive_callbacks on fennec. r=smaug

nexus is some high-end-ish phone, right? Should we ask someone to try out lower end phone too?
Attachment #8842900 - Flags: review?(bugs) → review+
(Assignee)

Comment 4

10 months ago
(In reply to Olli Pettay [:smaug] from comment #3)
> nexus is some high-end-ish phone, right? Should we ask someone to try out
> lower end phone too?

Nexus 5x lower end than you would think for the price due to some poor thermal design.  Its second core is shutdown most of the time AIUI.

I think, however, if we really want to discriminate between high and end low end devices on the same platform we need the time budget approach to limiting callbacks.  The simple limit pref is too course to cover the range of possibilities.  I'll file that follow-up now

Comment 5

10 months ago
Pushed by bkelly@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/7facce0be4a3
Tune dom.timeout.max_consecutive_callbacks on fennec. r=smaug

Comment 6

10 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/7facce0be4a3
Status: ASSIGNED → RESOLVED
Last Resolved: 10 months ago
status-firefox54: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.