Figure out how much we could save by sharing bytecode/sources per-process
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
People
(Reporter: terrence, Unassigned)
References
(Depends on 1 open bug, Blocks 1 open bug)
Details
(Whiteboard: [e10s-multi:+][MemShrink:P1])
For something like jquery, we probably have hundreds of copies of identical sources in different compartments. We should check on AWSY or membuster to see how much could be saved in practice by sharing identical code.
Comment 1•10 years ago
|
||
Since bug 679940, we share bytecode per-runtime. Script sources have a very similar model (I just don't have the bug number handy). What'd be nice is to extend this to per-process sharing, and it doesn't seem too hard. I'm morphing this bug to be about that.
Comment 2•7 years ago
|
||
Are there any plans to work on this? It seems pretty useful for e10s-multi as we crank up the number of content processes.
Comment 3•7 years ago
|
||
I don't have any plans or the time to work on this. Brian, can you give an assessment of the feasibility here?
Comment 4•7 years ago
|
||
Oh, I just see that this is essentially bug 1315757, part 2, and Brian is already needinfo'd on that.
Updated•7 years ago
|
Updated•7 years ago
|
Updated•7 years ago
|
Comment 5•6 years ago
|
||
Ted, do you know how this fits into our content memshrink work? Is it being duplicated elsewhere or are we taking a different approach.
Comment 6•5 years ago
|
||
Ted, can this get duped to the bytecode sharing thing you are working on?
Comment 7•5 years ago
|
||
We are handling self-hosted code in Bug 1458339, and various chrome code in Bug 1523749. What is proposed here would extend to content and is outside the Fission memshrink M1 target (if I remember correctly). It is still interesting.
In the meanwhile, we have split the Atoms from the rest of the data in SharedScriptData so that ImmutableScriptData is now fully immutable and in theory can be shared across processes if we had reasonable heuristics for when things are likely to be shared and worth the IPC.
Regarding Bug 1315757 (to share atoms): It would probably make sense to revisit this if/when we clean up static atoms in the engine which looked a bit complex when we last checked.
Updated•2 years ago
|
Description
•