Add profiler markers for thread wakeups.
Categories
(Core :: Gecko Profiler, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox99 | --- | fixed |
People
(Reporter: florian, Assigned: florian)
References
Details
Attachments
(1 file)
I would like to see when a thread wakes up, as that's impossible to know from the periodic stack sampling, and Runnable markers are not enough (some threads don't use runnables).
It would be even nicer to know which CPU core was used to schedule the wake up, to be able to check if messages we send to threads or processes cause cores to wake up. This information is easy to get on Windows and Linux, and I found a way on Macs with Intel CPUs, but for M1 Macs I haven't found anything.
On Mac the Quality of Service of a task is what's used to decide on which kind of core (performance or efficiency) the task will be scheduled, so I included that information (even though most of our threads currently use the default QoS).
If I can get this data to be reliable, I would like to use this to record telemetry about wakeup counts per thread, and CPU time per thread.
Assignee | ||
Comment 1•2 years ago
|
||
Updated•2 years ago
|
Pushed by fqueze@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/084ec5de6c39 Add 'Awake' profiler markers whenever a thread is awake, r=gerald.
Comment 3•2 years ago
|
||
bugherder |
Description
•