Add support for gathering multi-process profiles without relying on nsProfiler classes
Categories
(Core :: Gecko Profiler, enhancement, P3)
Tracking
()
People
(Reporter: aabh, Assigned: aabh)
References
(Depends on 1 open bug, Blocks 1 open bug)
Details
Saving profiles from multiple processes is currently only possible using methods defined/accessible through the nsProfiler/nsiProfiler interfaces & classes. This poses an issue when trying to stop the profiler using non-UI means (such as UNIX signals), as we must define the signal handlers in platform.cpp
, which cannot access nsProfiler methods.
Comment 1•7 months ago
|
||
Hmm, will you output separate files per process, or one integrated JSON? Usually, subprocesses send their profiles up to the parent process through an IPC channel whose parent process endpoint is on the parent process main thread. So you won't be able to use that IPC channel.
Assignee | ||
Comment 2•7 months ago
|
||
The aim of this is to try and output a single integrated JSON, as right now we can only dump a single JSON file per-process. As you note, the IPC channel gathering method is problematic when we are handling a signal, so we need another approach, which this bug tries to capture.
Updated•6 months ago
|
Updated•6 months ago
|
Description
•