Wasm-R3: Record-Reduce-Replay for Realistic and Standalone WebAssembly Benchmarks
summary
Builds bytecode instrumentation that record-reduce-replays Wasm executions, uses a shadow memory optimization plus call-state filtering to shrink traces from full size to 0.47% (99.53% reduction) and emits standalone replay modules that run on any Wasm engine. Applies to 27 successful web apps (63% of 43 tried), yields a benchmark suite called Wasm-R3-Bench, records with a mean 3.4x slowdown (worst >16x), and produces replays where most CPU cycles remain in the original Wasm code.
AI-written summary · about
chapters (12)
- 0:00Wasm-R3 introduction and goals
- 1:29Need for realistic Wasm benchmarks
- 2:54Challenges in record-replay
- 3:39Wasm-R3’s three phases
- 5:45Replay phase for standalone benchmarks
- 6:07Record phase: bytecode instrumentation
- 8:34Trace optimizations: shadow memory
- 9:39Replay phase: optimized code
- 10:22Evaluation: performance results
- 12:30Effectiveness of trace reduction
- 13:12Conclusion and open-source
- 13:33Q&A
related talks
47mRewrite the web with Rust and Web Assembly
21mHit the Ground Running with WebAssembly
24mMeta-tracing Interpreters in WebAssembly
38mWebAssembly beyond the browser
46mA State Of WebAssembly - The Browser is now a real VM
37mDecoding the hype behind WebAssembly: Looking under the hood
30mImproving web app with Rust and WASM
32mAll The Memory Safety Of C Combined With All The Blazing Speed Of JavaScript
