Isochrone

WASM Routing Kernel

This document tracks the current WASM kernel used for performance-critical routing code.

Scope of this setup

Runtime now requires this kernel for routing/search execution and edge-cost precompute. If WASM is unavailable, the app stops with:

Your browser does not support WASM, this app requires WASM for performance reasons

Why this shape

Implemented optimization

Build command

./wasm/build-routing-kernel.sh

Expected output:

If wasm32-unknown-unknown stdlib is missing, the script fails fast with install guidance. If wasm-opt is missing, the script fails fast with install guidance (brew install binaryen on macOS).

Release/profile notes:

Next integration milestones

  1. Prototype a bucketed/delta-stepping frontier in Rust/WASM for multi-mode search and benchmark it against the current radix-heap implementation.
  2. Investigate WASM threads as a later option for multi-mode performance, including deployment constraints (SharedArrayBuffer, COOP/COEP, Workers).
  3. Keep parity tests for kernel output stability across graph/schema changes.