Re: What's cooking in git.git (Aug 2008, #04; Sun, 17)

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

 



On Sun, Aug 17, 2008 at 03:17:35AM -0700, Junio C Hamano wrote:
> * bd/diff-strbuf (Wed Aug 13 23:18:22 2008 -0700) 3 commits
>  + xdiff-interface: hide the whole "xdiff_emit_state" business from
>    the caller
>  + Use strbuf for struct xdiff_emit_state's remainder
>  + Make xdi_diff_outf interface for running xdiff_outf diffs
> 
> Gives measurable performance improvement to textual diff generation.  For
> improving "blame" performance, it might be more effective to hook directly
> to lower level of xdiff machinery so that we do not even have to generate
> patch only to discard after reading "@@ -l,k +m,n @@" lines, but that
> would be a separate topic.

I have done this, resulting in my blame test case going from about 100s
on master to about 50s, but I need to do some additional cleanup before
it's ready to be submitted.  I also have some more ideas for how to
speed it up some more.  (Basically, with the textual diff generation
removed, most of the time now is spent in xdiff hashing lines.  Since
blame in copy-detection mode tends to diff against the same file over
and over again, this is wasted work.  Allowing the xdiff machinery to
re-use a diff preparation looks to be a little involved, though...)

-bcd
--
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]

  Powered by Linux