Project Overview & Harness Control
When does WebAssembly improve Web Applications?
This benchmark suite compares JavaScript and WebAssembly across 38 real-world workloads—ranging from audio DSP, 3D graphics, and neural AI models to Virtual DOM diffing, regex engines, and database queries. The evidence measures transfer, compilation, initialization, fixed work, and sample trajectories.
Interactive Benchmark Playground & Performance Comparison
Run JavaScript and WebAssembly benchmarks directly in browser workers across multi-iteration loops. Compare cold startup vs warm runtime optimizations and see real-time execution timing and speedup ratios.
“Cold start” here is the first iteration of a run in your current browser: worker load, Wasm compile and instantiate, input setup, then the first timed execution. Select 1 iteration to measure only that. What cold start includes, and how the controlled experiment defines cold more strictly.
Preparing benchmark suite...
Loading Interactive Benchmark Playground...
Evidence available now
Commit ddc8886 passed deno task check with 635 verification tests (100% green) and an independent review with no blocker, high, or medium finding. The acceptance package records the source and artifact hashes.
A Chrome 150 validation completed the visible JavaScript/Wasm control and returned two HTTP 201 responses, according to a parent attestation. The records were removed and no replayable browser artifact remains, so the attestation is unverified and supplies no timing evidence.
Evidence summary
- Catalog Workloads
- 38
- Playground Demos
- 38
- Run Unattended
- 37
- v2 Proposals
- 20
- Verification Test Gates
- 647 Passed
Workload matrix
Absolute durations remain separate by target and cache state. Cold and warm are controlled protocol states with an exact definition.
| Variant | Cache | Fresh launches | Samples | First scored median | All-sample median | p95 | Status |
|---|---|---|---|---|---|---|---|
| Loading local evidence… | |||||||
Complete trajectories
The first scored post-calibration iteration is retained alongside separate first-use lifecycle metrics. Slow samples are not silently removed.
No trajectories loaded.
Raw run inspector
Each record exposes correctness, work counters, build footprint, environment, metric availability, failures, and every sample.
No local records. Open six audio proposal result records or open the accepted sum-u32 source/build manifest without JavaScript.
How to read this page
- Rows from manual pilots stay labelled as pilots and do not enter the accepted corpus.
- Cold and warm records remain separate.
- Missing memory evidence is
unavailableorblocked; zero is reserved for a measured zero. - Paired ratios and exact intervals appear only after the fresh-launch gate commits enough valid pairs.
Multi-language comparison (run it here)
The same frozen sum-u32 kernel, implemented identically in JavaScript, WAT, AssemblyScript, C, C++, Rust, and Dart/WasmGC — compiled to WebAssembly and measured side by side in this tab.
Run the comparison
Ready. Select loop iterations, then click Start.
All timings are exploratory measurements taken in this browser tab; the arithmetic is verified bit-identical to the committed oracle before any timing is shown.