OXYGENHUB

Benchmarks against Git tuned for large repositories (refs #41) 5ae7533f1888

A Git column tuned as Git recommends for large repositories
(feature.manyFiles, core.untrackedCache, a commit-graph; no fsmonitor,
which has no daemon on Linux in Git 2.53). Tuned Git is ahead of oxy on
clean and one-file status, diff, log and blame; oxy beats Git as it comes
on status only.
Author
Andy McCall @andymccall <[email protected]>
When
· 2026-10-01 23:09 UTC
Signature
✔ signed by Andy McCall
Hash
5ae7533f1888a0e1d318e2eddc42133982c545d475b1a91107b8cbdd79cb9e9a
Depends on
1d360c91a289 33472ccc08cc
Depended on by
e96a430c78f3
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.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
1 atom, 0 tree operations, 1 file

Browse the tree at this change

modified docs/benchmarks.md +22 −0
…
847 unchanged lines
848 848
849 849
What remains on oxygen is checking each row's signature (30 ms for 100).
850 850
851 +
### Against Git tuned for large repositories (2026-10-02)
852 +
853 +
Git as it comes compares an untuned Git with an oxy that uses every
854 +
cache it has. `~/bench/vs-git-tuned.sh` adds a copy of the Git repository
855 +
tuned as Git recommends for large ones: `feature.manyFiles` (index v4 and
856 +
more), `core.untrackedCache`, and a commit-graph. Not `core.fsmonitor`:
857 +
Git 2.53 has no file-watcher daemon on Linux, and Watchman is not
858 +
installed. Earth, load average 1.6, three runs each, alternating.
859 +
860 +
| | oxy | Git | Git, tuned |
861 +
|---|---:|---:|---:|
862 +
| status, clean | 0.16 s | 0.20 to 0.21 s | **0.10 s** |
863 +
| status, one file edited | 0.12 to 0.13 s | 0.21 to 0.22 s | **0.10 to 0.11 s** |
864 +
| diff, one file | 0.22 to 0.23 s | 0.09 s | **0.08 to 0.09 s** |
865 +
| log -n 100 | 0.03 s | **0.00 s** | **0.00 s** |
866 +
| blame MAINTAINERS | 0.16 s | **0.06 s** | **0.06 s** |
867 +
868 +
Tuned Git is ahead of oxy on all five. Its untracked cache is what oxy's
869 +
directory times do, and with it Git's status is a little faster than
870 +
oxy's. oxy beats Git as it comes on status only. Claims of speed against
871 +
Git should say which Git.
872 +