Closed Bug 963499 (jank-watcher) Opened 6 years ago Closed 6 years ago

Implement a jank watcher to display event loop lags in Firefox OS's Developer HUD

Categories

(DevTools Graveyard :: WebIDE, defect)

defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
Firefox 30

People

(Reporter: janx, Assigned: janx)

References

Details

(Keywords: perf, Whiteboard: [c=tools p= s=2014.02.14 u=][qa-])

Attachments

(3 files, 4 obsolete files)

As a follow up to bug #960933, implement a JS jank watcher using bug #962511's devtools actor to display jank information in Firefox OS's devtools layers.
Depends on: developer-hud
No longer depends on: devtools-layers
Alias: jank-watcher
Summary: Implement a JS jank watcher to display jank info in Firefox OS's devtools layers → Implement a jank watcher to display event loop lags in Firefox OS's Developer HUD
Comment on attachment 8375855 [details] [diff] [review]
Implement a jank watcher to display event loop lags in Firefox OS's Developer HUD. r=vingtetun

Review of attachment 8375855 [details] [diff] [review]:
-----------------------------------------------------------------

R+ with one nit.

::: b2g/chrome/content/devtools.js
@@ +396,5 @@
> +        app.display();
> +      }
> +    }
> +
> +    this._active = value;

Move this one upper. Closer to the top of the method.
Attachment #8375855 - Flags: review+
Attached image jank.png
After playing with it, I decided to show the number of milliseconds instead of a jank count, much more useful that way. Also I find the actor threshold to be very low, thus tracking janks produces a lot of logs in ADB!
Comment on attachment 8375861 [details] [diff] [review]
Implement a jank watcher to display event loop lags in Firefox OS's Developer HUD. r=vingtetun

(keeping Vivien's r+)
Attachment #8375861 - Flags: review+
Attachment #8375859 - Attachment description: Bug 963499 - Add a JS jank watcher to the Developer HUD. r=vingtetun → Add a JS jank watcher to the Developer HUD. r=vingtetun
(In reply to Jan Keromnes [:janx] from comment #9)
> After playing with it, I decided to show the number of milliseconds instead
> of a jank count, much more useful that way. Also I find the actor threshold
> to be very low, thus tracking janks produces a lot of logs in ADB!

I thought I landed something which is 100ms by default but I landed something else :(

I will try to fix bug 968237 as soon as I can in order to unlock this feature.
(In reply to Vivien Nicolas (:vingtetun) (:21) from comment #11)
> I will try to fix bug 968237 as soon as I can in order to unlock this
> feature.

Well, technically this feature isn't blocked on bug #968237, and I'm not sure it should be blocked on bug #969827 either. The current situation with a threshold >=20ms is that you see a lot more updates and logs, but it's still useful.

I suggest we don't block on those bugs and land now. Does that work with you Vivien?
Flags: needinfo?(21)
(In reply to Jan Keromnes [:janx] from comment #12)
> (In reply to Vivien Nicolas (:vingtetun) (:21) from comment #11)
> > I will try to fix bug 968237 as soon as I can in order to unlock this
> > feature.
> 
> Well, technically this feature isn't blocked on bug #968237, and I'm not
> sure it should be blocked on bug #969827 either. The current situation with
> a threshold >=20ms is that you see a lot more updates and logs, but it's
> still useful.
> 
> I suggest we don't block on those bugs and land now. Does that work with you
> Vivien?

I'm fine to land it as if. People are still able to configure the interval in the meantime using MOZ_INSTRUMENT_EVENT_LOOP_THRESHOLD and MOZ_INSTRUMENT_EVENT_LOOP_INTERVAL in system/bin/b2g.sh if they need to tweak it until the pref has landed.
Flags: needinfo?(21)
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/40c7df94ad77
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Whiteboard: [fixed-in-fx-team]
Target Milestone: --- → Firefox 30
Keywords: perf
Whiteboard: [c=tools p= s=2014.02.14 u=]
Thanks for rebasing :)
Mike, I'm curious about those whiteboard values, what are they for?
Flags: needinfo?(mlee)
Whiteboard: [c=tools p= s=2014.02.14 u=] → [c=tools p= s=2014.02.14 u=][qa-]
Hi Jan,

We use those whiteboard values to populate our agile view, scrumbugs: https://scrumbu.gs/p/fxos-perf/

c=<component>, a performance-specific categorization (e.g. memory, power)
p=<point-value>, a value from 1 - 5 indicating Level Of Effort to fix this issue.
s=<sprint-name>, usually only used for bugs resolved before being added to a sprint.
u=<release/device>, used to indicate which release(s) or this is for (e.g. 1.3, 1.4, tarako) usually set when an issue is marked as a blocker.

Mike
Flags: needinfo?(mlee)
Thanks Mike!
Product: Firefox → DevTools
Product: DevTools → DevTools Graveyard
You need to log in before you can comment on or make changes to this bug.