[meta] Reduce content process memory overhead from system .jsms

NEW
Unassigned

Status

()

Core
JavaScript Engine
P1
normal
a year ago
4 days ago

People

(Reporter: mccr8, Unassigned)

Tracking

(Depends on: 4 bugs, Blocks: 1 bug, {meta})

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [e10s-multi:+])

(Reporter)

Description

a year ago
Beyond the simple effort of avoiding loading jsms, there have been a number of ideas over the years for reducing the overhead from the giant swarm of system jsms that we have in every content compartment, at the level of the JS engine.
(Reporter)

Updated

a year ago
Keywords: meta
(Reporter)

Updated

a year ago
Depends on: 1308512
(Reporter)

Comment 1

a year ago
To get a sense of what overhead we could be eliminating by not having so many .jsms, I tried setting jsloader.reuseGlobal to true, then started the browser, loaded hacker news, minimized memory usage, then took a memory report.

It looked like it reduced memory usage by around 3MB to 3.5MB in a content process. You end up with a new compartment that is about 510KB, but that eliminates about 2.5MB of direct compartment memory usage. The rest is various things like shapes (280kb saved), shared-immutable-strings-cache (250kb???), various XPConnect scope stuff (190kb), lazy scripts (150kb), object-groups/gc-heap (110kb), layout/rule-processor-cache (100kb???), shape tables (90kb), type-pool (40kb), unique id map (40kb), unused gc things (30kb).
(Reporter)

Comment 2

a year ago
I should add the disclaimer that there are a lot of error messages when I do that, so some memory savings could be from things failing to load.
(Reporter)

Updated

a year ago
Depends on: 1364559
Whiteboard: [e10s-multi:+]
Priority: -- → P1
(Reporter)

Updated

11 months ago
Keywords: stale-bug
(Reporter)

Updated

10 months ago
Depends on: 1381961

Updated

9 months ago
Summary: Reduce content process memory overhead from system .jsms → [meta] Reduce content process memory overhead from system .jsms
You need to log in before you can comment on or make changes to this bug.