From 0c0edf46ca75ee77ef24a6ae66f90c2542f43564 Mon Sep 17 00:00:00 2001 From: 44r0n7 <44r0n7+gitea@pm.me> Date: Tue, 27 Oct 2026 18:04:58 -0400 Subject: [PATCH] Decision: WebGPU renderer and multi-core simulation in the browser Co-Authored-By: Claude Opus 5.5 --- docs/DESIGN.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/DESIGN.md b/docs/DESIGN.md index 5a5fdc2..456bdd7 100644 --- a/docs/DESIGN.md +++ b/docs/DESIGN.md @@ -528,6 +528,13 @@ above, including: rate, up to a cap per metal; power never sets hardness, so it can't skip the steel bit. It is tuned like the drill and never harms anything built. It waits until power is switched back on, since today every machine runs without power. +- **Performance: WebGPU and all CPU cores, in the browser (2026-10-27).** Zoomed out, drawing + is CPU-bound (about 26 ns per visible grain) and the simulation runs on one core. The owner + chose: WebGPU only (no WebGL fallback), tested in Chrome and Firefox with a clear message when + it's missing; the game must be served with COOP/COEP headers (for SharedArrayBuffer), so + opening the file from disk is dropped; determinism is re-baselined once and becomes the same on + any number of cores; as fast as possible, measured at every step. Grain movement and heat go + across a worker pool first; moving the whole simulation into its own worker is decided after. ## Ideas not built yet