grit://cooking/bench/commit/small@small
← cookingall benchmarksraw data

grit commit · small @small

Commit on small synth: grit commit bench vs git add+commit

repo: 100-file synthetic repository · 100 files · 50 commits · 60 refs

$ grit-bench daily --only commit/small@small2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git5.1 ms4.6 ms5.7 ms2012 MB
grit4.8 ms4.1 ms10 ms2019 MB
grit is 1.1× fastermemory: 1.6× more
every timed run (log scale)
git
grit
3.2 ms13 ms
How it's measured
before each run
grit-bench prepare-worktree-commit --git git
git runs
$ set -eu
set -eu
if [ -s /tmp/grit-bench-scratch/daily-small/.grit-bench-worktree-paths ]; then
  tr '\n' '\0' < /tmp/grit-bench-scratch/daily-small/.grit-bench-worktree-paths | xargs -0 git add -- > /dev/null 2>&1
fi
git commit -q -m bench
grit runs
$ grit commit bench
Where the time goesone extra traced run per tool, outside the timed runs
git · median run 5.1 ms
run: git maintenance
1.2 ms
index: do_write_index ×2
0.1 ms
index: refresh
0.1 ms
index: do_read_index ×2
0.1 ms
dir: read_directory
0.1 ms
cache_tree: update ×2
0.0 ms
unpack_trees: unpack_trees
0.0 ms
unpack_trees: traverse_trees
0.0 ms
cache_tree: read ×2
0.0 ms
cache_tree: write ×2
0.0 ms
index: name-hash-init
0.0 ms
diff: setup
0.0 ms
diff: write
0.0 ms
grit · median run 4.8 ms
grit.repository.open ×2
0.3 ms
grit.index.write ×2
0.3 ms
grit.config.load ×4
0.1 ms
grit.diff.tree
0.1 ms
grit.index.read
0.0 ms
grit.pack.index.open
0.0 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e775.1 ms4.8 ms1.1× faster19 MB
2026-10-26c7cf2c4439.5 ms9.8 mspar18 MB
2026-10-252824ad3915.9 ms5.2 ms1.1× faster18 MB
2026-10-24157a05dde6.1 ms6.5 ms1.1× slower17 MB
2026-10-23bddf92f865.5 ms7.2 ms1.3× slower18 MB
2026-10-224c131b9426.2 ms7.6 ms1.2× slower17 MB
2026-10-21d4844e92a5.6 ms6.4 ms1.1× slower16 MB
2026-10-204754ad0b96.0 ms5.8 mspar15 MB