Closed Bug 1471650 Opened 4 years ago Closed 4 years ago

Talos --geckoProfile option should enable webrender-related threads for WebRender profiling

Categories

(Testing :: Talos, enhancement)

59 Branch
enhancement
Not set
normal

Tracking

(firefox63 fixed)

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: kats, Assigned: kats)

References

(Depends on 1 open bug)

Details

(Whiteboard: [PI:July])

Attachments

(1 file)

Right now the talos --geckoProfile option hard-codes the the "GeckoMain,Compositor" thread list, which doesn't provide much useful information when the talos test is running on one of the webrender-enabled test platforms. If webrender is enabled (generally via MOZ_WEBRENDER=1 in the env) it should use a thread list of "GeckoMain,Compositor,WR,Renderer" instead.

Also, it should actually pass the thread list to the gecko profiler, which it currently doesn't do. The relevant env var MOZ_PROFILER_STARTUP_FILTERS [1] is not set at [2] along with the other vars.

[1] https://searchfox.org/mozilla-central/rev/14cb8f1c238735ba1abe18ad44e39808983c2572/tools/profiler/core/platform.cpp#1971
[2] https://searchfox.org/mozilla-central/rev/14cb8f1c238735ba1abe18ad44e39808983c2572/testing/talos/talos/gecko_profile.py#82
Whiteboard: [PI:July]
Is the profile supposed to be automatically symbolicated, or is there extra work that needs to be done for that?
Comment on attachment 8990786 [details]
Bug 1471650 - Profile WebRender threads in talos if WebRender is enabled.

https://reviewboard.mozilla.org/r/255838/#review262790

one optional nit

::: testing/talos/talos/ffsetup.py:205
(Diff revision 1)
>                           " set")
>          if upload_dir and self.test_config.get('gecko_profile'):
>              self.gecko_profile = GeckoProfile(upload_dir,
>                                                self.browser_config,
> -                                              self.test_config)
> +                                              self.test_config,
> +                                              os.getenv('MOZ_WEBRENDER') == '1')

is this guaranteed to be a string on all operating systems?  we could force it by doing:
str(os.getenv('MOZ_WEBRENDER')) == '1'
Attachment #8990786 - Flags: review?(jmaher) → review+
(In reply to Joel Maher ( :jmaher ) (UTC-4) from comment #4)
> is this guaranteed to be a string on all operating systems?  we could force
> it by doing:
> str(os.getenv('MOZ_WEBRENDER')) == '1'

Good point, updated patch accordingly.
Assignee: nobody → bugmail
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9dc02d333988
Profile WebRender threads in talos if WebRender is enabled. r=jmaher
https://hg.mozilla.org/mozilla-central/rev/9dc02d333988
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in before you can comment on or make changes to this bug.