NXS · Nyxis · Demo
Shared workers
Four Web Workers read the same dataset. JSON structured-clones per worker; NXS shares one SharedArrayBuffer when cross-origin isolated.
postMessage blocking time (clone), and total bytes copied scales with workers. NXS: one SharedArrayBuffer backed by the .nxb file when cross-origin isolated; each worker gets a view — handoff is O(1) with no byte copy. Init rows include module load + reader construction. Enable the writer checkbox to have worker 0 patch record 42’s score every 50 ms while workers 1–3 read it; coherency across workers only appears with a real SAB (the banner explains COOP/COEP and fallbacks). Ready.
JSON — copy-per-worker
Main thread parses JSON once, then postMessage's the array to each worker. Structured clone runs synchronously on the sender — the main thread blocks until the full copy is done. Transfer time = sender-side postMessage blocking duration (the clone cost).
Bytes copied (total)
—
Transfer time (total)
—
Per-worker avg
—
NXS — zero-copy SAB share
One SharedArrayBuffer holds the .nxb bytes. Each worker gets a Uint8Array view over the same memory. Transfer time = sender-side postMessage cost (SAB pointer registration, not a copy). Worker init time includes module load and NxsReader construction.
Bytes copied (total)
0
Transfer time (total)
—
Per-worker avg
—
Writer (worker 0) last wrote:idle
Reader ticks (workers 1-3 reading record 42's score):
Summary
Run the demo to populate.