grit://cooking/bench/merge/content-both-sides@wide-20k
← cookingall benchmarksraw data

grit merge · content-both-sides @wide-20k

Merge a branch where both sides edited all 20k files (one content merge per path) vs git merge

repo: 20,000-file tree; both sides edit every file for content merge · 20,000 files · 4 commits · 2 refs

$ grit-bench daily --only merge/content-both-sides@wide-20k2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git1.30 s1.17 s1.33 s548 MB
grit1.13 s1.12 s1.15 s582 MB
grit is 1.1× fastermemory: 1.7× more
every timed run (log scale)
git
grit
888 ms1.67 s
How it's measured
before each run
grit-bench prepare-merge --git git
git runs
$ git merge -q --no-edit topic
grit runs
$ grit merge topic
Where the time goesone extra traced run per tool, outside the timed runs
git · median run 1.30 s
unpack_trees: unpack_trees ×3
817 ms
merge: checkout
816 ms
merge: incore_recursive
305 ms
merge: process_entries ×3
295 ms
merge: processing
285 ms
run: git stash
34 ms
cache_tree: update
27 ms
index: refresh ×3
23 ms
unpack_trees: traverse_trees ×3
15 ms
index: do_write_index ×2
15 ms
merge: collect_merge_info
14 ms
merge: traverse_trees
14 ms
merge: display
7.2 ms
index: preload ×3
7.0 ms
merge: plist ×3
4.5 ms
run: git maintenance
2.5 ms
index: do_read_index ×2
2.5 ms
cache_tree: write ×2
0.6 ms
cache_tree: read ×2
0.1 ms
merge: write_auto_merge
0.0 ms
grit · median run 1.13 s
grit.diff.tree ×5
33 ms
grit.index.write ×2
8.2 ms
grit.index.read ×4
5.0 ms
grit.repository.open ×2
0.4 ms
grit.config.load ×4
0.1 ms
grit.pack.index.open
0.0 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e771.30 s1.13 s1.1× faster82 MB
2026-10-26c7cf2c4432.07 s2.59 s1.3× slower77 MB
2026-10-252824ad3911.45 s1.64 s1.1× slower106 MB
2026-10-24157a05dde—not run——
2026-10-23bddf92f86—not run——
2026-10-224c131b942—not run——
2026-10-21d4844e92a—not run——
2026-10-204754ad0b9—not run——