[PATCH] revised manifest speedups
mpm at selenic.com
Fri Aug 26 13:52:50 CDT 2005
On Wed, Aug 24, 2005 at 11:04:36AM -0400, Chris Mason wrote:
> Hello everyone,
> Last night I reworked my latest manifest speedups to use the python array
> type instead of my nlbuf extension. I think the code is much less complex
> now, and this patch is only 3 or 4 seconds slower than my C extension was.
> The algorithm is still based on bisect. The basic idea is to forget about
> maintaining a line based representation of the manifest and store it
> all in a big char array. The manifestsearch function does the heavy
> lifting of finding offsets into the buffer for delta generation.
Does your bisection remember where the last insert/delete was and
narrow the search? Do you sort the insert/delete list?
> This has been through light testing here. Matt, if it seems reasonable, I'll
> hammer on it.
Looks promising. I'll probably want the compress bit separately.
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial