You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A recurring industry claim: "WebAssembly is ~40% slower than native." That number comes from runtime/interpreter deployments (wasm3, interpreted sandboxes, JIT warm-up). It does not describe synth's model: AOT wasm→bare-metal native with no runtime — the output is Thumb-2/RV32 machine code, and the only question is compilation quality, which is measurable.
We have partial evidence both directions and should publish one honest, reproducible artifact instead of counter-slogans.
What we can already show (in-tree, CI-gated)
Semantics: bit-exact vs wasmtime across the differential suite (incl. the full f32 set, 156/156 + 84/84).
Structural wins native can't match: proof-carrying specialization (Beyond parity: proof-carrying specialization + optimal-alloc to BEAT LLVM (0.7× target) #494, SYNTH_FACT_SPEC) consumes loom wsc.facts value-range premises and ordeal-certifies guard/clamp elisions — gust_mix 50 B → 14 B on the branchless-select clamp, approaching LLVM's 12 B floor from a proven direction (LLVM cannot elide what it cannot prove; we carry the proof).
Allocator at optimum on key kernels: flat_flight at its Belady frame-traffic-0 optimum since v0.24.0.
Motivation
A recurring industry claim: "WebAssembly is ~40% slower than native." That number comes from runtime/interpreter deployments (wasm3, interpreted sandboxes, JIT warm-up). It does not describe synth's model: AOT wasm→bare-metal native with no runtime — the output is Thumb-2/RV32 machine code, and the only question is compilation quality, which is measurable.
We have partial evidence both directions and should publish one honest, reproducible artifact instead of counter-slogans.
What we can already show (in-tree, CI-gated)
SYNTH_FACT_SPEC) consumes loomwsc.factsvalue-range premises and ordeal-certifies guard/clamp elisions — gust_mix 50 B → 14 B on the branchless-select clamp, approaching LLVM's 12 B floor from a proven direction (LLVM cannot elide what it cannot prove; we carry the proof).What we must measure, not assert
-icountcross-check): same kernel as (a) native C →arm-none-eabi-gcc/clang-Osand (b) wasm →synth compile(default +SYNTH_FACT_SPEC). The Beyond parity: proof-carrying specialization + optimal-alloc to BEAT LLVM (0.7× target) #494 kill-criterion (<1.0× then ≤0.70×) is gale's DWT measurement — OPEN.Deliverable
scripts/repro/parity_benchmark/+artifacts/parity-benchmark.md:Refs: #494 (beat-LLVM), #390 (size attribution), #209 (perf epic), #242 (North Star). gale owns the silicon rows.