Keynote: Making JavaScript on WebAssembly Fast
summary
Packages SpiderMonkey as a WebAssembly module and uses wiser snapshotting to preinitialize the JS engine state so instantiation skips most setup. Snapshotting yields a 6× faster startup on a markdown test with about 80% of time previously in engine initialization moved into the build step. Throughput uses AOT-friendly tricks: parameterized inline cache stubs, where 2 KB of IC stubs covers 95% of Octane, letting interpreted/AOT runs approach JIT-like performance on constrained platforms.
AI-written summary · about
chapters (7)
- 0:00Introduction
- 1:26Why JavaScript on WebAssembly
- 4:57Use cases for fast JS on WASM
- 8:05JS engine performance breakdown
- 11:11Speeding up initialization
- 14:43Optimizing throughput
- 18:37Call to action and thanks
related talks
53mWebAssembly – To the browser and beyond!
29mEnter the Sandbox: JS on Wasm
13mKeynote: Wasm from the Inside Out: A Journey Through the Impact of WebAssembly in Production
28mJavy: Creating a toolchain for running JavaScript on WebAssembly
09mKeynote: WebAssembly Development is Easy
35mJavaScript ∩ WebAssembly
34mPractical Polyglot WebAssembly
44mJavaScript in WebAssembly? Why and How
