Re: diffcore-rename performance mode
- From
Jeff King <peff@peff.net>
- Date
- Sep 25, 2007, 19:06 UTC
- Message-ID
- <20070925190640.GA4613@coredump.intra.peff.net>
- In-Reply-To
- <20070925163843.GA22987@coredump.intra.peff.net>
On Tue, Sep 25, 2007 at 12:38:43PM -0400, Jeff King wrote:
>[...] > > What is most confusing is why the 'somefree' case performs so badly, > since we should just be using the cnt_data. I'll see if gprof can shed
OK, I found the problem. estimate_similarity calls diff_populate_filespec each time, even if we already have the cnt_data, which leads to recomputing the blob contents from deltas. Oops.
Fixing this, the correct numbers are:
| stock | nofree | old somefree | fixed somefree -----------------|----------------------------------------------- user time (s) | 76.78 | 16.96 | 46.26 | 16.99 peak memory (Kb) | 52300 | 66796 | 59156 | 57328
So now we're at a 4.5x speedup for about 10% extra memory usage. Patch will follow.
-Peff