Open
Bug 1754889
Opened 3 years ago
Updated 3 years ago
Allow single-threaded profile buffers, for use in busy and/or time-critical threads
Categories
(Core :: Gecko Profiler, task, P3)
Core
Gecko Profiler
Tracking
()
NEW
People
(Reporter: mozbugz, Unassigned)
References
Details
As an alternative to bug 1697953 (making the one buffer atomic), we could provide separate single-threaded buffers (with no locking at all), for real-time threads and the busiest thread (probably the main thread). This should eliminate contentions around locks and memory accesses for these lucky threads.
It would probably be technically easier and safer than implementing atomic accesses, but there would still be some complexity to handle the multiple buffers per process, both:
- during profiling (as part of managing Firefox-wide chunks and freeing the oldest ones, and pre-allocating chunks as needed), and
- when capturing (to integrate their data in the proper place in the json output).
You need to log in
before you can comment on or make changes to this bug.
Description
•