Re: git-diff-tree inordinately (O(M*N)) slow on files with many changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Linus Torvalds <torvalds@xxxxxxxx> writes:

> Junio, I think this is worthy to go in before a 1.4.3 release. Possibly 
> even back-ported to earlier trees.

Thanks for resolving this quickly; I was (am still somewhat)
down sick today and missed all the excitement.

> Quite frankly, I prefer my previous patch more, it just avoids that whole 
> problem, and two shifts and adds (even with a conditional) are often 
> faster than a full 64-bit multiply.

I agree (although I am not sure about the "do it twice for
small" bit), and I think Davide agrees with you in his reply:

Davide Libenzi <davidel@xxxxxxxxxxxxxxx> writes:
> On Mon, 16 Oct 2006, Linus Torvalds wrote:
> ...
> I ended up using this one:
>
> #define XDL_HASHLONG(v, b) ((((unsigned long) (v) >> ((CHAR_BIT * sizeof(unsigned long)) - (b))) + \
>                              (unsigned long) (v)) & ((1UL << (b)) - 1))

so I am inclined to apply Davide's version, but I am going to
bed again now...



-
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

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]