grit://cooking/bench/branch/rename@many-refs
← cookingall benchmarksraw data

grit branch · rename @many-refs

Rename one branch vs git branch -m

repo: 10,000 packed refs · 200 files · 1,000 commits · 10,000 refs

$ grit-bench daily --only branch/rename@many-refs2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git1.7 ms1.5 ms1.9 ms207.4 MB
grit3.2 ms2.9 ms3.5 ms2011 MB
grit is 1.9× slowermemory: 1.4× more
every timed run (log scale)
git
grit
1.2 ms4.3 ms
How it's measured
before each run
set -eu 'grit-bench' prepare-daily-reset --git git git branch -D daily-bench-branch-renamed 2>/dev/null || true git branch -D daily-bench-branch 2>/dev/null || true git branch daily-bench-branch HEAD
git runs
$ git branch -m daily-bench-branch daily-bench-branch-renamed
grit runs
$ grit-bench rename-branch-lib --repo /tmp/grit-bench-scratch/daily-big-asset/worktree-run-many-refs --old daily-bench-branch --new daily-bench-branch-renamed
notes
grit trace: traced run wrote no trace to /tmp/grit-daily-trace-551938-grit.txt
Where the time goesone extra traced run per tool, outside the timed runs
— no phase timings for this scenario yet. They come from a traced run of each tool (GIT_TRACE2_PERF for git, GRIT_TRACE for grit).
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e771.7 ms3.2 ms1.9× slower11 MB
2026-10-26c7cf2c4432.4 ms8.7 ms3.6× slower12 MB
2026-10-252824ad3911.7 ms5.4 ms3.2× slower12 MB
2026-10-24157a05dde2.2 ms6.5 ms2.9× slower12 MB
2026-10-23bddf92f862.2 ms7.5 ms3.4× slower12 MB
2026-10-224c131b942—fail——
2026-10-21d4844e92a—not run——
2026-10-204754ad0b9—not run——