grit://cooking/bench/push/refspec@git-git
← cookingall benchmarksraw data

grit push · refspec @git-git

Explicit refspec push HEAD:refs/heads/bench vs git push

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

$ grit-bench daily --only push/refspec@git-git2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git1.05 s1.05 s1.06 s596 MB
grit1.15 s1.14 s1.15 s574 MB
grit is 1.1× slowermemory: 1.3× less
every timed run (log scale)
git
grit
831 ms1.45 s
How it's measured
setup
remote http://127.0.0.1:44565/remote.git served by git http-backend (git's own smart HTTP server)
before each run
grit-bench prepare-network-push --git git --bare /tmp/grit-bench-scratch/daily-remote-git-git/remote.git
git runs
$ git push -q origin HEAD:refs/heads/bench
grit runs
$ grit push origin HEAD:refs/heads/bench
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 1.05 s
run: git remote-http
1.05 s
run: git-remote-http
1.04 s
push: transport_push
1.04 s
transport_pu: push_refs
1.03 s
run: git send-pack
1.03 s
run: git pack-objects
510 ms
pack-objects: enumerate-objects
504 ms
transport_pu: get_refs_list
5.7 ms
pack-objects: prepare-pack
1.9 ms
pack-objects: write-pack-file
0.6 ms
grit · median run 1.15 s
grit.push
1.13 s
grit.repository.open ×3
0.4 ms
grit.config.load ×4
0.2 ms
grit.pack.index.open
0.0 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e771.05 s1.15 s1.1× slower74 MB
2026-10-26c7cf2c443—fail——
2026-10-252824ad391—fail——
2026-10-24157a05dde—fail——
2026-10-23bddf92f86—fail——
2026-10-224c131b942—fail——
2026-10-21d4844e92a—not run——
2026-10-204754ad0b9—not run——