OXYGENHUB

The backlog 4 baseline against Git on the Linux tree e4b8bcf04a86

refs #41
Author
Andy McCall @andymccall <[email protected]>
When
· 2026-09-30 20:52 UTC
Signature
✔ signed by Andy McCall
Hash
e4b8bcf04a868996db3527329e593f19e4932f9f668b6d03add86e8a48073e6c
Depends on
1d360c91a289 60622d23b9e4 61e9ad6ddc2d
Depended on by
bd9414401fdc
In bookmarks
agents-in-readme bare-hashes carried-not-removed carry-identical doctor-trust identical-sides keyless-tags main merge-remote-bookmark only-help-103 paths-for-resolutions-and-amend push-notes show-stat subrepo-pin-state switch-says
In tags
v0.10.0 v0.11.0 v0.2.0 v0.3.0 v0.3.1 v0.4.0 v0.4.1 v0.4.2 v0.4.3 v0.4.4 v0.4.5 v0.4.6 v0.5.0 v0.5.1 v0.6.0 v0.7.0 v0.8.0 v0.9.0
Edits
4 atoms, 0 tree operations, 2 files

Browse the tree at this change

modified docs/backlog-overnight-4.md +3 −1
…
56 unchanged lines
57 57
58 58
## Speed
59 59
60 -
- [ ] B0 **Baseline.** Update `~/bench/linux-bench.sh` for today's build (the
60 +
- [x] B0 **Baseline.** Update `~/bench/linux-bench.sh` for today's build (the
61 61
  state index, the manifest cache, clean and dirty status, diff, commit,
62 62
  log, blame, checkout, a local clone, fsck, gc, store size) with three runs
63 63
  each and oxy and Git alternating. Record the table in `docs/benchmarks.md`.
…
50 unchanged lines
114 114
115 115
- 2026-09-30 Backlog written from the day's measurements (state index,
116 116
  changed-only builds and the manifest cache already in).
117 +
118 +
- 2026-09-30 **B0** baseline (table in `docs/benchmarks.md`; `linux-bench.sh` now runs three of each, alternating, plus a local clone; the loop-3 script is kept as `linux-bench.sh.loop3`). oxy is ahead on the first commit (33.3 s against 38.2 s) and gc (48 s against 100 s); clean status is close (0.43 to 0.53 s against 0.34 to 0.46 s). Behind: dirty status and diff (1.5 to 2.2 s against 0.3 to 0.8 s), commit (2.5 to 3.1 s against 0.4 to 0.5 s), log (0.9 s against 0.00 s), blame (1.0 s against 0.07 s), checkout (3 s against 0.4 to 0.5 s), fsck (24 s against 13 s), and a new gap: a local clone takes 56 s and 3.3 GB against Git's 18 s. The store after gc is 375 MB (it now includes the 48 MB state index) against 295 MB.
modified docs/benchmarks.md +29 −0
…
597 unchanged lines
598 598
| diff | 2.93 s | 1.19 to 1.45 s | 0.16 to 0.25 s |
599 599
| status, clean | 0.68 to 0.76 s | 0.41 to 0.43 s | 0.26 to 0.32 s |
600 600
601 +
### Baseline for backlog 4 (2026-09-30 21:43, oxygen#41)
602 +
603 +
`~/bench/linux-bench.sh`, now with three runs of each everyday command,
604 +
oxy and Git alternating, and a local clone. Earth's load average was 7.2
605 +
at the start (no Flow jobs running), falling during the run; the first run
606 +
of each set is the noisiest.
607 +
608 +
| Operation | oxy | Git |
609 +
|---|---:|---:|
610 +
| init and commit the tip | **33.3 s**, 3.1 GB | 38.2 s, 42 MB |
611 +
| status, clean | 0.43 to 0.53 s, 75 MB | 0.34 to 0.46 s |
612 +
| status, one file | 1.73 to 1.81 s (3.36 s first), 375 MB | 0.36 to 0.65 s |
613 +
| diff, one file | 1.77 to 2.24 s | 0.24 to 0.29 s |
614 +
| commit, one file | 3.10 s | 0.41 s |
615 +
| status, 1 000 files | 1.62 s (4.21 s first), 573 MB | 0.28 to 0.38 s |
616 +
| diff, 1 000 files | 1.54 to 2.40 s | 0.59 to 0.81 s |
617 +
| commit, 1 000 files | 2.47 s | 0.53 s |
618 +
| log -n 100 | 0.86 to 1.03 s | 0.00 s |
619 +
| blame MAINTAINERS | 0.99 to 1.04 s | 0.07 s |
620 +
| clone, local path | 56.3 s, 3.3 GB | 18.4 s |
621 +
| checkout the first state, and back | 2.86 s, 3.00 s | 0.39 s, 0.50 s |
622 +
| fsck | 24.4 s, 773 MB | 12.8 s |
623 +
| gc | **48.1 s** | 100.5 s |
624 +
| store before and after gc | 465 MB, 375 MB | 648 MB, 295 MB |
625 +
626 +
oxy is now ahead of Git on the first commit (33 s against 38 s) and on gc
627 +
(48 s against 100 s). The store after gc grew from 324 MB because it now
628 +
includes the workspace's state index.
629 +