On Tue, May 21, 2024 at 03:03:17PM -0400, Taylor Blau wrote: > Implement a straightforward performance test demonstrating the benefit > of pseudo-merge bitmaps by measuring how long it takes to count > reachable objects in a few different scenarios: > > - without bitmaps, to demonstrate a reasonable baseline > - with bitmaps, but without pseudo-merges > - with bitmaps and pseudo-merges > > Results from running this test on git.git are as follows: > > Test this tree > ----------------------------------------------------------------------------------- > 5333.2: git rev-list --count --all --objects (no bitmaps) 3.46(3.37+0.09) > 5333.3: git rev-list --count --all --objects (no pseudo-merges) 0.13(0.11+0.01) > 5333.4: git rev-list --count --all --objects (with pseudo-merges) 0.12(0.11+0.01) That's not a very exciting result. I have a feeling that your git.git is not a very interesting test case. We'd want a lot of refs, and ones that are old and have bushy history that is not included in the more recent branches. So something like a bunch of old unmerged pull request heads, for example. ;) Do you have more interesting numbers for something like that? -Peff