Re: We should add a "git gc --auto" after "git clone" due to commit graph
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Oct 8, 2018, 16:41 UTC
- Message-ID
- <20181008164141.GZ23446@szeder.dev>
- In-Reply-To
- <20181003191805.GB16666@sigill.intra.peff.net>
On Wed, Oct 03, 2018 at 03:18:05PM -0400, Jeff King wrote:
> I'm still excited about the prospect of a bloom filter for paths which > each commit touches. I think that's the next big frontier in getting > things like "git log -- path" to a reasonable run-time.
There is certainly potential there. With a (very) rough PoC experiment, a 8MB bloom filter, and a carefully choosen path I can achieve a nice, almost 25x speedup:
$ time git rev-list --count HEAD -- t/valgrind/valgrind.sh 6
real 0m1.563s user 0m1.519s sys 0m0.045s
$ time GIT_USE_POC_BLOOM_FILTER=y ~/src/git/git rev-list --count HEAD -- t/valgrind/valgrind.sh 6
real 0m0.063s user 0m0.043s sys 0m0.020s
bloom filter total queries: 16269 definitely not: 16195 maybe: 74 false positives: 64 fp ratio: 0.003934
But I'm afraid it will take a while until I get around to turn it into something presentable...