Re: [GSoC] Git Blog 12

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

 



Christian Couder <christian.couder@xxxxxxxxx> 于2021年8月11日周三 下午4:20写道:
>
> On Wed, Aug 11, 2021 at 5:47 AM ZheNing Hu <adlternative@xxxxxxxxx> wrote:
> >
> > ZheNing Hu <adlternative@xxxxxxxxx> 于2021年8月10日周二 下午10:20写道:
>
> > > I think find_subpos() called by grab_sub_body_contents() and find_wholine()
> > > called by grab_person() are evidences that we are repeating iteratively.
> > > But the proportion of time they occupy is too small. 0.0142% and 0.0109%
> > >
> >
> > Using such a method may reduce some unnecessary scans [1]
> > But it can do very little optimization... 1.6%.
> > On the other hand, our optimization should focus on the default format of
> > `git cat-file --batch`.
> >
> > My new idea is to need a fast path: when we use the default format,
> > let us directly execute get_object() to avoid unnecessary traversal
> > and checking.
>
> I think it should be done not only when we use the default format but
> when we use any format that only needs the metadata provided by
> get_object(). This way that wouldn't be a special case fast path, but
> rather a generally useful optimization.

Sorry, the reply is a bit late. These two days have been busy implementing
more valuable performance optimization patches. I finally did not implement
the above plan. At present, ref-filter does have some small areas worth
optimizing. A large part of the remaining performance loss comes from
more allocated memory and more copying. We must bear a certain gap
in performance. But we can minimize it as much as possible. This is perhaps
the most reasonable at present.

Let’s forget about the previous commit-slab for now and take a look at my
new optimization these two days:
https://lore.kernel.org/git/pull.1016.git.1628842990.gitgitgadget@xxxxxxxxx/

Thanks.
--
ZheNing Hu




[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