grit://cooking/bench/status/dirty@synth-100k
← cookingall benchmarksraw data

grit status · dirty @synth-100k

Dirty worktree (~1% modified): grit status vs git status -s

repo: 100,000-file synthetic repository; canonical cached shape · 100,000 files · 1,000 commits · 1,200 refs

$ grit-bench daily --only status/dirty@synth-100k2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git97 ms64 ms102 ms2029 MB
grit57 ms54 ms76 ms2041 MB
grit is 1.7× fastermemory: 1.4× more
every timed run (log scale)
git
grit
43 ms128 ms
How it's measured
before each run
grit-bench prepare-worktree-status-dirty --git git
git runs
$ git status -s
grit runs
$ grit status
Where the time goesone extra traced run per tool, outside the timed runs
git · median run 97 ms
status: untracked
30 ms
dir: read_directory
30 ms
index: do_write_index
23 ms
index: preload
22 ms
index: do_read_index
5.6 ms
index: name-hash-init
4.8 ms
status: worktrees
2.2 ms
index: refresh
2.2 ms
status: index
0.8 ms
unpack_trees: unpack_trees
0.6 ms
status: print
0.2 ms
cache_tree: read
0.2 ms
cache_tree: write
0.1 ms
diff: setup ×2
0.0 ms
diff: write ×2
0.0 ms
unpack_trees: traverse_trees
0.0 ms
grit · median run 57 ms
grit.status.scan
51 ms
grit.index.read
8.1 ms
grit.repository.open
0.2 ms
grit.config.load ×2
0.1 ms
grit.pack.index.open
0.0 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e7797 ms57 ms1.7× faster41 MB
2026-10-26c7cf2c443170 ms114 ms1.5× faster46 MB
2026-10-252824ad391110 ms83 ms1.3× faster40 MB
2026-10-24157a05dde98 ms66 ms1.5× faster35 MB
2026-10-23bddf92f86112 ms81 ms1.4× faster35 MB
2026-10-224c131b942106 ms79 ms1.3× faster34 MB
2026-10-21d4844e92a86 ms156 ms1.8× slower36 MB
2026-10-204754ad0b9114 ms200 ms1.8× slower36 MB