grit://cooking/bench/pull/check@git-git
← cookingall benchmarksraw data

grit pull · check @git-git

Pull --check reports fast-forward possibility without changing HEAD

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

$ grit-bench daily --only pull/check@git-git2026-10-27 · grit 8dbc58e77 · git version 2.43.0
toolmedianminmaxrunspeak memory
git108 ms105 ms111 ms2068 MB
grit45 ms43 ms51 ms2048 MB
grit is 2.4× fastermemory: 1.4× less
every timed run (log scale)
git
grit
34 ms139 ms
How it's measured
setup
remote http://127.0.0.1:43219/remote.git served by git http-backend (git's own smart HTTP server)
before each run
grit-bench prepare-network-fetch-incr --git git --bare /tmp/grit-bench-scratch/daily-remote-git-git/remote.git
git runs
$ git fetch -q origin master && git rev-list --left-right --count HEAD...origin/master >/dev/null
grit runs
$ grit pull --check 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 108 ms
run: git remote-http
83 ms
run: git-remote-http
82 ms
fetch: fetch_refs
57 ms
run: git fetch-pack
57 ms
fetch-pack: negotiation_v0_v1
18 ms
fetch: consume_refs
17 ms
run: git rev-list
16 ms
fetch-pack: parse_remote_refs_and_find_cutoff
14 ms
fetch: remote_refs
7.4 ms
fetch-pack: mark_common_remote_refs
6.5 ms
run: git index-pack
5.6 ms
negotiation_: round
3.2 ms
run: git maintenance
1.9 ms
fetch-pack: mark_complete_local_refs
0.8 ms
index: do_read_index
0.3 ms
submodule: parallel/fetch
0.0 ms
cache_tree: read
0.0 ms
grit · median run 45 ms
grit.pack.index
1.2 ms
grit.pack.index.open ×93
0.5 ms
grit.pack.delta.resolve
0.4 ms
grit.repository.open
0.2 ms
grit.config.load ×2
0.1 ms
Every day8 days
dategrit commitgitgritgrit vs gitgrit peak
2026-10-278dbc58e77108 ms45 ms2.4× faster48 MB
2026-10-26c7cf2c443106 ms146 ms1.4× slower93 MB
2026-10-252824ad391111 ms53 ms2.1× faster48 MB
2026-10-24157a05dde113 ms742 ms6.6× slower65 MB
2026-10-23bddf92f86106 ms692 ms6.5× slower100 MB
2026-10-224c131b942—fail——
2026-10-21d4844e92a—not run——
2026-10-204754ad0b9—not run——