Set the flag "relevant for js" on existing label frames and add new ones for JavaScript developers
Categories
(Core :: Gecko Profiler, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox99 | --- | fixed |
People
(Reporter: julienw, Assigned: julienw)
References
(Blocks 1 open bug)
Details
Attachments
(3 files, 1 obsolete file)
48 bytes,
text/x-phabricator-request
|
dmeehan
:
approval-mozilla-beta+
|
Details | Review |
48 bytes,
text/x-phabricator-request
|
dmeehan
:
approval-mozilla-beta+
|
Details | Review |
48 bytes,
text/x-phabricator-request
|
dmeehan
:
approval-mozilla-beta+
|
Details | Review |
I noticed some label frames could be useful to show in the "javascript" tree, such as "Style Computation". Then thanks to Markus I realized that a full class of label frames could be interesting to show: the ones using their subcategory as their label. Indeed these labels should be human readable and most of the time interesting to javascript developers.
We can try to turn them on all first. If the result is that we have too many label unrelevant label frames, we could come up with different macros for these cases.
Assignee | ||
Comment 1•3 years ago
|
||
Here is a profile example: https://share.firefox.dev/3ALx5qo
Assignee | ||
Comment 2•3 years ago
|
||
Assignee | ||
Comment 3•3 years ago
|
||
After discussion we need to be more fine-grained, therefore come up with new macros so that some of them would be relevant for JS but others wouldn't.
Assignee | ||
Comment 4•3 years ago
|
||
Here are the main "blocks" that web developers expect to see: JavaScript / Style / Layout / Paint / Composite.
(From https://developers.google.com/web/fundamentals/performance/rendering)
We could have different labels and maybe a few more blocks (or rather sub-parts of them) but this should be as simple.
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 5•3 years ago
|
||
Here is an example of a profile with the new patches: https://share.firefox.dev/3KkgbTc
This is a profile of the profiler UI.
As a comparison, the same scenario on the current Nightly: https://share.firefox.dev/3ty1WDx
Another example on loading a page on leboncoin.fr:
- with the patch: https://share.firefox.dev/3KbW1uG
- with Nightly: https://share.firefox.dev/3HLYFpk
My approach has been that I didn't want any category to disappear from the activity graph or the flame chart, focusing on when this is useful for web developers. For example I added a frame label for GC happening in Web page but not for the GC happening after clicking on the button in about:memory. It's likely that I missed some cases that we'll be able to add later too.
Assignee | ||
Comment 6•3 years ago
|
||
Here is a try build with these changes: https://treeherder.mozilla.org/jobs?repo=try&revision=0f1aaa33e73fba52c0d8f84373a6fa96a43758c4
Assignee | ||
Comment 7•3 years ago
|
||
Assignee | ||
Comment 8•3 years ago
|
||
Depends on D140388
Assignee | ||
Comment 9•3 years ago
|
||
Depends on D140389
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Assignee | ||
Comment 11•3 years ago
|
||
Comment on attachment 9266574 [details]
Bug 1752861 - [profiler] Expose GC and CC operations to the JS view r=gerald!,sfink!
Beta/Release Uplift Approval Request
- User impact if declined: These patches add useful information to JavaScript developers using the profiler. It would be good to have that in beta earlier.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This doesn't change the behavior for users that don't use the profiler.
For users of the profiler, this is adding some information and removing other, but nothing is risky here. - String changes made/needed:
Assignee | ||
Updated•3 years ago
|
Comment 12•3 years ago
|
||
Comment 13•3 years ago
|
||
bugherder |
Comment 14•3 years ago
|
||
Comment on attachment 9266572 [details]
Bug 1752861 - [profiler] Add a few new macros to add frame labels that will show up in javascript stacks r=gerald
Approved for 99.0b4. Thanks.
Comment 15•3 years ago
|
||
Comment on attachment 9266573 [details]
Bug 1752861 - [profiler] Rename and expose to JS some existing frame labels as well as adding a few r=gerald!,mstange!
Approved for 99.0b4. Thanks.
Comment 16•3 years ago
|
||
Comment on attachment 9266574 [details]
Bug 1752861 - [profiler] Expose GC and CC operations to the JS view r=gerald!,sfink!
Approved for 99.0b4. Thanks.
Comment 17•3 years ago
|
||
bugherder uplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/f15a12d887e9
https://hg.mozilla.org/releases/mozilla-beta/rev/7aae08bfe15d
https://hg.mozilla.org/releases/mozilla-beta/rev/34afd8162b88
Comment 18•3 years ago
|
||
:julienw - could this bug be closed and used to only track the uplifts?
Track any follow-up work in separate bugs.
Assignee | ||
Comment 19•3 years ago
|
||
Sure, let's do that. Thanks for the feedback!
Assignee | ||
Updated•3 years ago
|
Description
•