Thread (1 message) 1 message, 1 author, 2016-06-15

Re: 1.3.0 creating bigger packs than 1.2.3

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:24

Linus Torvalds [off-list ref] writes:
You can try "--depth=50" (slogan: more "hot delta on delta action"), but 
it's looking less and less like a delta selection issue, and more and more 
like the deltas themselves are deproved.
I do not think I have time to look into this today until late
night, but one thing I noticed is that trying to delta more
things sometimes tend to produce bigger result X-<.  

At the end of pack-objects.c::find_deltas(), there is a code
that is commented out, which is remnant from a failed
experiment.  What it tried to do was to avoid placing an object
whose delta depth is already window-size back into the
candidates list, which means the next object gets compared with
one object more than otherwise would be (the extra one being the
oldest one in the window -- which might not produce better delta
than the maxed out one, but the delta with the maxed out one
would not be used anyway).  The result was noticeably worse
overall packsize with more deltified objects.

We might be better off favoring compressed undeltified
representation over deltified representation a bit more
aggressively.  Currently we allow delta as big as half the
uncompressed size minus 20-byte overhead or something like that;
tweaking that limit might show improvements.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help