Files
vercel-labs--zerolang/docs/articles/benchmarks.md
T
wehub-resource-sync e7738de6d2
CI / Deep Native Runtime Cases (1/6) (push) Has been skipped
CI / Native Preflight (push) Failing after 1s
CI / Native Runtime Cases (1/2) (push) Failing after 0s
CI / Native Runtime Cases (2/2) (push) Failing after 1s
CI / Native Metadata Reports (push) Failing after 0s
CI / Native Direct Backend Artifacts (push) Failing after 0s
CI / Native Sanitizer Smoke (push) Failing after 1s
CI / Command Contract Snapshots (push) Failing after 1s
CI / Deep Conformance Suite (push) Has been skipped
CI / Graph Build Perf (push) Failing after 1s
CI / Deep Native Preflight (push) Has been skipped
CI / Deep Native Runtime Cases (2/6) (push) Has been skipped
CI / Deep Native Runtime Cases (3/6) (push) Has been skipped
CI / Conformance Suite (push) Failing after 1s
CI / Workspace Checks (push) Failing after 0s
CI / Deep Native Runtime Cases (5/6) (push) Has been skipped
CI / Deep Native Runtime Cases (6/6) (push) Has been skipped
CI / Deep Native Runtime Cases (4/6) (push) Has been skipped
CI / Deep Graph Build Perf (push) Has been skipped
chore: import upstream snapshot with attribution
2026-07-13 12:29:30 +08:00

56 lines
1.1 KiB
Markdown

## Measure The Current Compiler
Zerolang benchmarks are regression signals for the current compiler. They are not broad
marketing claims. Use them to compare graph inputs, artifact sizes, build time,
startup/runtime behavior, and memory use across changes.
Run:
```sh
pnpm run bench
```
Outputs:
```sh
.zero/bench/latest.json
.zero/bench/trends/latest.json
.zero/bench/trends/summary.md
```
## Cases
Current benchmark cases include:
- `hello`, `add`, `structs`, `params`
- `buffers`, `parser`, `codec`, `parse`
- `slices`, `arena`, `fallibility`, `branches`
- `module-package`, `rescue`
- `fs-resource`, `mem-copy-fill`, `zero-hash`
The Zero inputs live under `benchmarks/zero`. Host targets that cannot run a
case report `skipped` with a reason instead of failing the entire benchmark.
## Metrics
Important fields:
- `buildMs`
- `runMs`
- `runMinMs`
- `runRuns`
- `artifactBytes`
- `compressedArtifactBytes`
- `peakRssBytes`
- `expectedStdout`
- `outputMatches`
## Options
```sh
ZERO_BENCH_RUNS=<n> pnpm run bench
ZERO_BENCH_MODE=sandbox pnpm run bench
```
Use one run for smoke checks and more runs when comparing trends.