On Mon, Dec 7, 2015 at 11:59 PM, Jeff King <peff@xxxxxxxx> wrote: > On Mon, Dec 07, 2015 at 02:56:33PM -0800, Junio C Hamano wrote: > >> Jeff King <peff@xxxxxxxx> writes: >> >> > You're computing the patch against the parent for each of those 3000 >> > commits (to get a hash of it to compare against the single hash on the >> > other side). Twelve minutes sounds long, but if you have a really >> > gigantic tree, it might not be unreasonable. >> > >> > You can also try compiling with "make XDL_FAST_HASH=" (i.e., setting >> > that option to the empty string). Last year I found there were some >> > pretty suboptimal corner cases, and you may be hitting one (we should >> > probably turn that option off by default; I got stuck on trying to find >> > a hash that would perform faster and never followed up[1]. >> > >> > I doubt that is your problem, but it's possible). >> > >> > -Peff >> > >> > [1] http://thread.gmane.org/gmane.comp.version-control.git/261638 >> >> I vaguely recall having discussed caching the patch-ids somewhere so >> that this does not have to be done every time. Would such an >> extension help here, I wonder? > > I think you missed John's earlier response which gave several pointers > to such caching schemes. :) Yeah, he also gave very interesting performance numbers. Thanks John! > I used to run with patch-id-caching in my personal fork (I frequently > use "git log --cherry-mark" to see what has made it upstream), but I > haven't for a while. It did make a big difference in speed, but I never > resolved the corner cases around cache invalidation. I will see if I can work on that after I am done with untracked cache... -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html