Re: [PATCH v1 7/9] diff --color-moved-ws: optimize allow-indentation-change
- From
Stefan Beller <sbeller@google.com>
- Date
- Nov 16, 2018, 20:40 UTC
- Message-ID
- <CAGZ79ka4mHxtcwjfu3taipakUHtDXg6DjQu=nJun8Nm+snyo0g@mail.gmail.com>
- In-Reply-To
- <20181116110356.12311-8-phillip.wood@talktalk.net>
On Fri, Nov 16, 2018 at 3:04 AM Phillip Wood <phillip.wood@talktalk.net> wrote:
Show 22 quoted lines
> > From: Phillip Wood <phillip.wood@dunelm.org.uk> > > When running > > git diff --color-moved-ws=allow-indentation-change v2.18.0 v2.19.0 > > cmp_in_block_with_wsd() is called 694908327 times. Of those 42.7% > return after comparing a and b. By comparing the lengths first we can > return early in all but 0.03% of those cases without dereferencing the > string pointers. The comparison between a and c fails in 6.8% of > calls, by comparing the lengths first we reject all the failing calls > without dereferencing the string pointers. > > This reduces the time to run the command above by by 42% from 14.6s to > 8.5s. This is still much slower than the normal --color-moved which > takes ~0.6-0.7s to run but is a significant improvement. > > The next commits will replace the current implementation with one that > works with mixed tabs and spaces in the indentation. I think it is > worth optimizing the current implementation first to enable a fair > comparison between the two implementations.
Up to here the series looks good and I think we could take it as a preparatory self-standing series.
I'll read on. Thanks, Stefan