Closed Bug 1371838 Opened 7 years ago Closed 7 years ago

Register WebRender threads with the Gecko profiler

Categories

(Core :: Graphics: WebRender, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
mozilla58
Tracking Status
firefox56 --- unaffected
firefox57 --- unaffected
firefox58 --- fixed

People

(Reporter: mstange, Assigned: jerry)

References

(Blocks 1 open bug)

Details

(Keywords: feature, Whiteboard: [wr-reserve] [gfx-noted])

Attachments

(6 files, 2 obsolete files)

WebRender launches a few threads internally. We'd like to be able to profile them, so we need to call functions on thread creation + destruction in order to register + unregister them with the Gecko Profiler.
Attached patch proof of concept (obsolete) (deleted) — Splinter Review
This works but needs lots of cleanup, and comments, and the rust parts should be rewritten by somebody who actually knows rust.
Peter, would you like to take this over and finish it?
Flags: needinfo?(howareyou322)
Keywords: feature
Priority: -- → P3
Whiteboard: [gfx-noted]
Sure, I can help on this.
Assignee: nobody → howareyou322
Flags: needinfo?(howareyou322)
Attached patch rebased (deleted) — Splinter Review
It doesn't seem to be capturing any WebRender:WorkerThreads. I haven't checked why that is.
Attachment #8876292 - Attachment is obsolete: true
With attachment 8917973 [details] [diff] [review], I'm able to capture WebRender::Backend but not WebRender::WorkerThreads too. I will clean up the patches for landing first because we need this bug for performance profiling.
Any update on how this is going? It would be good to land sooner rather than later.
Flags: needinfo?(howareyou322)
I think we need to modify here to capture WebRender::WorkerThreads. http://searchfox.org/mozilla-central/source/gfx/webrender_bindings/src/bindings.rs#597
I will take the remaining works.
Assignee: howareyou322 → hshih
Status: NEW → ASSIGNED
Flags: needinfo?(howareyou322)
MozReview-Commit-ID: 2gVAmU2xomP
Attachment #8926323 - Flags: review?(jmuizelaar)
MozReview-Commit-ID: BUyTq2vz3cO
Attachment #8926324 - Flags: review?(jmuizelaar)
Attached patch P3: add a custom thread lister to WR. (obsolete) (deleted) — Splinter Review
MozReview-Commit-ID: yyFwBr21F3
Attachment #8926325 - Flags: review?(jmuizelaar)
MozReview-Commit-ID: 7YbQNzTNpmE
Attachment #8926326 - Flags: review?(jmuizelaar)
fix typo.
Attachment #8926328 - Flags: review?(jmuizelaar)
Attachment #8926325 - Attachment is obsolete: true
Attachment #8926325 - Flags: review?(jmuizelaar)
Priority: P3 → P1
Whiteboard: [gfx-noted] → [wr-reserve] [gfx-noted]
Attachment #8926323 - Flags: review?(jmuizelaar) → review+
Attachment #8926324 - Flags: review?(jmuizelaar) → review+
Attachment #8926328 - Flags: review?(jmuizelaar) → review+
Attachment #8926326 - Flags: review?(jmuizelaar) → review+
Attached patch WR changes (deleted) — Splinter Review
MozReview-Commit-ID: 5mIoBmz59SR
Depends on: 1415150
Pushed by hshih@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/8e69fae378b7 export the gecko profiler registering function to WR. r=jrmuizel https://hg.mozilla.org/integration/mozilla-inbound/rev/a6ad193d398e register the WR thread pool's thread to gecko profiler. r=jrmuizel https://hg.mozilla.org/integration/mozilla-inbound/rev/3fe8d225b7ba add a custom thread listener to WR. r=jrmuizel https://hg.mozilla.org/integration/mozilla-inbound/rev/d352680181fc set the window_id as renderer_id to WR. r=jrmuizel
Depends on: 1416543
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: