Hello all,

An idea came up recently which I imagine some of you have probably already 
considered at some point, so I'd love to hear any thoughts you have, or 
summaries of past discussions you'd be willing to share. Or if this idea is 
fundamentally infeasible, I'd love to hear that too.

The scenario: we've been investigating a case where many open tabs all 
embed the same cross-site iframe, and all of those iframes get put into the 
same process due to the heuristics described in 899838 - Improve process 
reuse policies - chromium 
<https://bugs.chromium.org/p/chromium/issues/detail?id=899838>. Ignoring 
for the moment whether those heuristics are optimal, the result is a single 
Isolate with many NativeContexts, where each NativeContext loads mostly the 
same scripts.

The idea: could V8 share bytecode and/or Sparkplug code for functions in 
those scripts? I know that TurboFan code is native context dependent, but 
as far as I know, both bytecode and Sparkplug code are native context 
independent. If V8 could avoid generating duplicates, then this scenario 
would use substantially less memory, plus tabs after the first wouldn't 
have to wait on tiering up to Sparkplug.

Thanks,
Seth

-- 
-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-dev/bbeb2a47-a26c-4623-81a5-7cad2c0dfec1n%40googlegroups.com.

Reply via email to