Closed Bug 1714577 Opened 3 years ago Closed 3 years ago

Teach WebRTC.org to use the Gecko Profiler

Categories

(Core :: WebRTC, enhancement)

enhancement

Tracking

()

RESOLVED FIXED
91 Branch
Tracking Status
firefox91 --- fixed

People

(Reporter: padenot, Assigned: padenot)

References

Details

Attachments

(11 files)

(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), image/png
Details
No description provided.

This allows using the Gecko Profiler without pulling in half of Gecko (nsTArray,
nsString, etc.). This is for use in third party code, that we lightly patch to
register the threads.

Depends on D116838

This is the only change that is needed, and is trivial to rebase if this file
changes. I don't know if there is value in providing the raw patch file
alongside this commit, like we sometimes do?

Depends on D116839

This is just ./mach build-backend -b GnMozbuildWriter with the change in Part 1.

Depends on D116840

We're going to modify it, but it will cause unnecessary churn to reformat it to
Gecko style (it would change all indentation, etc.), in case we want to update
it with upstream.

Depends on D116841

Depends on D116845

Attached image webrtc-profile-decode.png (deleted) —

This is how it looks like in the end, when using the profile Media and recording a WebRTC call.

Attachment #9225207 - Attachment description: Bug 1714577 - Part 7 - Change trace_event.h tracing macros to use the Gecko Profiler, and clean up the header. r?gerald → Bug 1714577 - Part 7 - Add a function to insert a very simple profiler marker in the micro gecko profiler. r?gerald
Pushed by padenot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/79db0c37af56
Part 1 - Include the Gecko Profiler include directory in WebRTC.org files. r=ng
https://hg.mozilla.org/integration/autoland/rev/b2767ca4b806
Part 2 - Introduction of the micro gecko profiler API. r=gerald
https://hg.mozilla.org/integration/autoland/rev/7c5c4bce1b36
Part 3 - Register WebRTC threads with the Gecko Profiler. r=ng
https://hg.mozilla.org/integration/autoland/rev/782e6df9b4c8
Part 4 - Regenerate `moz.build` files to add the new include directory. r=ng
https://hg.mozilla.org/integration/autoland/rev/e805cbb61030
Part 5 - Add GeckoTraceEvent.h to clang-format-ignore. r=gerald
https://hg.mozilla.org/integration/autoland/rev/837b6ce8367b
Part 6 - Copy WebRTC's trace_event.h to Gecko, verbatim, and redirect the original trace_event.h to it. r=gerald
https://hg.mozilla.org/integration/autoland/rev/e296aab6c841
Part 7 - Add a function to insert a very simple profiler marker in the micro gecko profiler. r=gerald
https://hg.mozilla.org/integration/autoland/rev/258640cc1188
Part 8 - Modify GeckoTraceEvent.h to use the micro gecko profiler API. r=gerald
https://hg.mozilla.org/integration/autoland/rev/2b9472a516eb
Part 9 - Video capture code also has tracing macros. r=ng
https://hg.mozilla.org/integration/autoland/rev/cd6d06ee89dd
Part 10 - Add (some?) WebRTC threads to the firefox profiler.  r=julienw,gerald
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: