Web lists-archives.com

Re: Bad performance when using git log --parents (used by gitk)




On Tue, Apr 02, 2019 at 08:20:05PM +0200, Johannes Schindelin wrote:

> > Hitting some quadratic complexity algorithm explains why the "degradation"
> > is so huge. And if I understand it correctly we are more or less "unlucky"
> > to hit such access patterns more often in the new repo.
> >
> > Anyway, nice to see that you already have some ideas regarding how to
> > improve this.
> 
> In the meantime, maybe the commit graph feature can help you?
> 
> 	git config --global core.commitGraph true
> 	git config --global gc.writeCommitGraph true
> 	git commit-graph write --reachable
> 
> The idea being that the commit graph extracts a lot of information
> pre-emptively and makes the lookup of those bits faster than unpacking the
> commits all the time.

I'd definitely encourage Björn (or anybody with a biggish repo) to check
out the commit-graph work, because it's really cool. But it won't help
much here, because the quadratic loop is just on linked-list insertion.
We're literally spending all of our time chasing pointers in memory.

-Peff