Goal
Add a reproducible, honest performance comparison covering:
- zig-js single-thread execution;
- zig-js shared-realm no-GIL Thread scaling;
- JavaScriptCore single-context execution;
- JavaScriptCore independent-context parallel scaling.
Method
- one shared pure-JavaScript workload source for both engines;
- deterministic checksums so timing cannot hide wrong results;
- ReleaseFast zig-js and the system JavaScriptCore framework;
- warm-up outside timed regions;
- seven full samples with median/min/max reporting;
- equal work per lane and explicit hardware/software metadata;
- clearly distinguish zig-js shared-realm threads from JSC independent contexts.
Deliverables
- repeatable benchmark command and machine-readable raw output
- documented methodology, caveats, and saved dated result
- README summary linked to the full report
- lightweight validation plus one batched full benchmark run
- green full Actions gate
Evidence
- Harness:
dde0426 - Published report and documentation:
d962d6b - CI compatibility repair:
f658843 - Saved report: docs/.data/benchmark-comparison-2026-07-13.md
- Raw samples: docs/.data/benchmark-comparison-2026-07-13.tsv
- Final Actions run: https://github.com/zig-utils/zig-js/actions/runs/29275718376