Open Bug 1373185 Opened 7 years ago Updated 2 years ago

GC pause telemetry doesn't take account of whether the browser is idle

Categories

(Core :: JavaScript: GC, enhancement, P3)

55 Branch
enhancement

Tracking

()

People

(Reporter: jonco, Unassigned)

Details

We saw an increase in the max GC pause when bug 1367905 landed.  This is not necessarily a bad thing, because we actually want to run longer slices when the user is idle, however the telemetry doesn't distinguish these cases.

Perhaps what we need is separate telemetry for max pause for the idle and non-idle cases.  Also, we should add telemetry for the proportion of slices that overran their budget.

Other ideas are welcome.

Olli, is there a simple check for whether the user is idle we can do from the GC?
Flags: needinfo?(bugs)
FYI, I landed bug 1372042 yesterday.

(In reply to Jon Coppeard (:jonco) from comment #0)
> Olli, is there a simple check for whether the user is idle we can do from
> the GC?
The idle stuff I landed has nothing to do with user idleness. It is all about browser idleness.
And no, there isn't really easy way to check that, and that isn't the right thing to do, since
idleness may change at any time.
We could pass the idle period deadline to JS engine (non-null means idle period).
http://searchfox.org/mozilla-central/rev/c49a70b53f67dd5550eec8a08793805f2aca8d42/dom/base/nsJSEnvironment.cpp#1937,1945-1947

This setup wouldn't capture the case when some idle callback causes GC to run, but that is fine, I think, since from web page point of view while it is running idle callbacks, it isn't really idle.
Flags: needinfo?(bugs)
Summary: GC pause telemetry doesn't take account of whether the user is idle → GC pause telemetry doesn't take account of whether the browser is idle
Priority: -- → P2
Moving to p3 because no activity for at least 1 year(s).
See https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md#how-do-you-triage for more information
Priority: P2 → P3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.