Open
Bug 1506986
Opened 6 years ago
Updated 4 months ago
Measure graphics shared memory contributions to per-content-process memory usage
Categories
(Toolkit :: about:memory, enhancement)
Toolkit
about:memory
Tracking
()
NEW
People
(Reporter: jld, Unassigned)
References
Details
Currently we're using the resident-unique memory reporter to estimate how much memory usage is increased by an additional content process, because this omits shared memory which we assume to be common to all processes (either anonymous memory like dom::ipc::SharedMap or read-only file mappings like libxul's text section).
However, graphics also uses writeable shared memory, shared between one content process and the process hosting the compositor, and that's also omitted by resident-unique even though it's effectively owned by the content process.
The amount seems to depend a lot on usage — Google Docs used 3.5 MB when I measured it, but a page that used normal markup (instead of a big canvas) was much less. However, point-in-time measurements like this might underestimate peak usage.
(Note that there's also work to move certain types of rendering out of the content process; see bug 1477756 for WebGL and bug 1464032 for Windows 2D. At least for the WebGL remoting we'll use shared memory as a command buffer, but we won't be shipping around rendered frames if I understand correctly.)
We could try to scrape this out of the OS's memory mapping info, assuming that memory that's PROT_WRITE and MAP_SHARED (or equivalent) belongs to the content process, or hook into our shared memory code (but see bug 1455106).
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•