grit://cooking/bench/fetch/deepen@git-git
← cookingall benchmarksraw data

grit fetch · deepen @git-git

Deepen a depth-1 client by 50 commits vs git fetch --deepen 50

repo: Upstream git/git pinned at v2.47.0, full history · 4,525 files · 75,031 commits · 954 refs

$ grit-bench daily --only fetch/deepen@git-git2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git655 ms640 ms660 ms5259 MB
grit5.41 s5.38 s5.48 s576 MB
grit is 8.3× slowermemory: 3.4× less
every timed run (log scale)
git
grit
508 ms6.90 s
How it's measured
setup
remote http://127.0.0.1:35823/remote.git served by git http-backend (git's own smart HTTP server)
before each run
set -eu cd '/tmp/grit-bench-scratch/daily-remote-git-git/remote.git-campaign-push-client' rm -f "$(git rev-parse --git-path shallow)" git fetch --depth 1 --no-tags -q origin 'master'
git runs
$ git fetch --deepen 50 --no-tags -q origin master
grit runs
$ grit fetch --deepen 50 --no-tags origin master
checked first
before timing, git and grit were each run once and their results compared
Where the time goesone extra traced run per tool, outside the timed runs
git · median run 655 ms
run: git remote-http
648 ms
run: git-remote-http
647 ms
fetch: fetch_refs
624 ms
run: git fetch-pack
624 ms
run: git /tmp/grit-bench-scratch/daily-remote-git-git/remote.git-campaign-push-client/.git/shallow.lock ×2
451 ms
fetch-pack: negotiation_v0_v1
68 ms
negotiation_: round
68 ms
fetch: consume_refs
14 ms
run: git rev-list
14 ms
fetch-pack: parse_remote_refs_and_find_cutoff
13 ms
fetch: remote_refs
3.3 ms
run: git maintenance
1.9 ms
fetch-pack: mark_common_remote_refs
0.7 ms
index: do_read_index
0.4 ms
submodule: parallel/fetch
0.1 ms
cache_tree: read
0.0 ms
fetch-pack: mark_complete_local_refs
0.0 ms
grit · median run 5.41 s
grit.pack.index
752 ms
grit.pack.delta.resolve
599 ms
grit.repository.open ×2
0.3 ms
grit.pack.index.open ×7
0.2 ms
grit.config.load ×4
0.1 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e77655 ms5.41 s8.3× slower76 MB
2026-10-26c7cf2c443—fail——
2026-10-252824ad39118.61 s15.53 s1.2× faster212 MB
2026-10-24157a05dde18.53 s27.98 s1.5× slower581 MB
2026-10-23bddf92f86752 ms1.11 s1.5× slower69 MB
2026-10-224c131b942806 ms1.21 s1.5× slower68 MB
2026-10-21d4844e92a—not run——
2026-10-204754ad0b9—not run——