Open
Bug 1670403
(stencil-nav)
Opened 4 years ago
Updated 2 months ago
[meta] Cache Stencils across Documents
Categories
(Core :: JavaScript Engine, task, P1)
Core
JavaScript Engine
Tracking
()
NEW
People
(Reporter: tcampbell, Unassigned)
References
(Depends on 10 open bugs, Blocks 2 open bugs)
Details
(Keywords: meta)
In the same vein as Bug 1599160, we would like to take advantage of Stencil being agnostic of documents/globals in order to reuse the parsed result across navigations.
The minimal objective here is to support directly re-using Stencil across same-origin navigations using an in-memory cache. This will target large JS bundle files that are common across multiple articles on a news site, for example.
Making multi-page websites perform like single-page-apps is the broad objective.
The Phase 2 Capabilities that improve performance and memory usage for existing use cases will also contribute significantly to the performance of this cache and reduce its overhead.
Once we have this base capability, we can build on this in very interesting ways:
- Unify this in-memory cache with the on-disk JS Bytecode Cache workflow to make JSBC more asynchronous.
- Unified sub-resource caching where the eviction and scheduling policies for JS, CSS, and images in a page can be consistently applied.
- Use other strategies to pre-warm the cache with Stencils that we expect to need, including cross-site hints when reasonable.
- Store certain JIT hinting across documents such as Warp inlining data, in order for the new document to JIT earlier.
Updated•2 years ago
|
Severity: S2 → N/A
Reporter | ||
Updated•1 year ago
|
Assignee: tcampbell → nobody
You need to log in
before you can comment on or make changes to this bug.
Description
•