makepad/platform/script/compute/examples
2026-10-24 04:29:42 +02:00
..
bench_admission.rs script: Splash VM heaps, isolates and lazy system modules 2026-10-13 12:26:21 +02:00
bench_codegen.rs script: Splash VM heaps, isolates and lazy system modules 2026-10-13 12:26:21 +02:00
bench_dispatch.rs script: Splash VM heaps, isolates and lazy system modules 2026-10-13 12:26:21 +02:00
bench_kernels.rs work: JIT safety (invalidated code traps and parks, fuzzer + fatal checker, W^X), JIT memory round 2 (trim-epoch hand-back, fresh-chunk rebuild, O3 job leaks, domain THP), cost-based decaying tier-up, race speedups, web export shipping profile (static closure + post-opt, env drivers, subpath fix), per-host SIMD width in Splash kernels, AI hub Claude backend, fractal parity, Story menu + theme picker, skin sizes, Sandbox 166 fixes, arm64 SIGBUS fix, webview + window fixes 2026-10-24 04:29:42 +02:00
kernel_runs.rs work: JIT safety (invalidated code traps and parks, fuzzer + fatal checker, W^X), JIT memory round 2 (trim-epoch hand-back, fresh-chunk rebuild, O3 job leaks, domain THP), cost-based decaying tier-up, race speedups, web export shipping profile (static closure + post-opt, env drivers, subpath fix), per-host SIMD width in Splash kernels, AI hub Claude backend, fractal parity, Story menu + theme picker, skin sizes, Sandbox 166 fixes, arm64 SIGBUS fix, webview + window fixes 2026-10-24 04:29:42 +02:00
wasm_diff.mjs script (compute): four-wide wasm entries take any n (a masked tail), and the exact multiply-add's spill only on its rare path -- a kernel with a four-wide form now gets only that entry in the generated module (no scalar twin): each iteration's lane mask is element < n, set without a branch, so the last group runs masked (no buffer or ctx stores past n; the fast store paths are off in a partial group, its words may be another chunk's). wasm_module returns one export per kernel and whether it is four wide. The exact fused multiply-add (engines without a fused relaxed_madd: Safari, Firefox) keeps its result in a register and stores its operands, calls the fix-up and reloads only when a lane needs the fix. The film's 111 kernels: 3.05 -> 1.99 MB relaxed, 6.07 -> 3.99 MB exact; four wide is 1.8x its scalar size. Exact four wide: k_myc 227 -> 176, k_room 1180 -> 910 ns/element (desktop Chrome, relaxed off); relaxed unchanged. Checked: cargo test --release -p makepad-script-compute --features vm (all pass); examples/wasm_diff seeds 41 and 42 x 3000 rounds, TurboFan and Liftoff, n 0..31 incl. spare buffers and the plate kernels: all bit-equal (removing the tail mask or keeping fast tail stores fails them). 2026-10-01 11:33:28 +02:00
wasm_diff.rs script: Splash VM heaps, isolates and lazy system modules 2026-10-13 12:26:21 +02:00