[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Anyone ever look at libvdelta?

From: Daniel Berlin <dan_at_dberlin.org>
Date: 2002-02-08 22:46:33 CET

On 8 Feb 2002, Greg Hudson wrote:

> On Fri, 2002-02-08 at 13:51, Daniel Berlin wrote:
> > I'm just wondering if anyone looked at it/determined if it was any faster
> > than what we have now.
>
> I just took a look at the code. I think what we have right now easier
> to read and understand.
Yes, definitely.

>
> The license is also some awful 324-line AT&T abomination with a nasty
> termination clause (which probably disqualifies it from being "open
> source" according to the OSI, by the way).
I know.

>
> > Certainly, it should be more space efficient.
>
> In its results, or in its processing?

Results.

> I didn't see much evidence of the
> latter (it seems to allocate about the same amount of stuff); for the
> former, it would be interesting to run tests and see if there's a
> noticeable difference.

I'm running tests now.
>
> If we do significantly worse than this code, then we probably have a bug
> or misunderstanding in our vdelta algorithm (or we underestimated the
> savings from vcdiff instruction encoding), and we should revisit our
> algorithm.

No, it's more the encoding of the differences.
They use a more space efficient encoding, merging ops, using a
quick/recent cache when possible to base ops on.
It might be faster to decode, too.

Okay, some prelim data:
In terms of size:
For small size streams, our vdelta does slightly better most of the time.
As it gets larger, their vdelta does better.
For instance, we get 41k vs 46k, 422 bytes vs 600 bytes, etc.
Sometimes, for smaller bytestream (< 1k), it seesaws the other way, with
our vdelta beating libvdelta 500 v 300, 376 v 204, etc.

I'm working on speed comparisons, but here's just a small part of the
space output:

libvdelta size is 63
our vdelta size is 71
libvdelta size is 103
our vdelta size is 134
libvdelta size is 57
our vdelta size is 54
libvdelta size is 21
our vdelta size is 16
libvdelta size is 23
our vdelta size is 20
libvdelta size is 23
our vdelta size is 20
libvdelta size is 41
our vdelta size is 37
libvdelta size is 65
our vdelta size is 69
libvdelta size is 33
our vdelta size is 29
libvdelta size is 40
our vdelta size is 37
libvdelta size is 30
our vdelta size is 28
libvdelta size is 45
our vdelta size is 44
libvdelta size is 20
our vdelta size is 18
libvdelta size is 29
our vdelta size is 28
libvdelta size is 21
our vdelta size is 16
libvdelta size is 27
our vdelta size is 24
libvdelta size is 31
our vdelta size is 24
libvdelta size is 29
our vdelta size is 24
libvdelta size is 23
our vdelta size is 16
libvdelta size is 31
our vdelta size is 24
libvdelta size is 56
our vdelta size is 60
libvdelta size is 60
our vdelta size is 60
libvdelta size is 43
our vdelta size is 44
libvdelta size is 61
our vdelta size is 60
libvdelta size is 29
our vdelta size is 27
libvdelta size is 20
our vdelta size is 12
libvdelta size is 63
our vdelta size is 75
libvdelta size is 179
our vdelta size is 195
libvdelta size is 30
our vdelta size is 30
libvdelta size is 30
our vdelta size is 30
libvdelta size is 28
our vdelta size is 30
libvdelta size is 26
our vdelta size is 29
libvdelta size is 23
our vdelta size is 20
libvdelta size is 23
our vdelta size is 20
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 15
our vdelta size is 8
libvdelta size is 1169
our vdelta size is 1756
libvdelta size is 95
our vdelta size is 119
libvdelta size is 27
our vdelta size is 24
libvdelta size is 27
our vdelta size is 24
libvdelta size is 31
our vdelta size is 33
libvdelta size is 22
our vdelta size is 19
libvdelta size is 22
our vdelta size is 19
libvdelta size is 22
our vdelta size is 19
libvdelta size is 64
our vdelta size is 74
libvdelta size is 35
our vdelta size is 32
libvdelta size is 308
our vdelta size is 414
libvdelta size is 216
our vdelta size is 260
libvdelta size is 267
our vdelta size is 307
libvdelta size is 20
our vdelta size is 12
libvdelta size is 88
our vdelta size is 103
libvdelta size is 76
our vdelta size is 94
libvdelta size is 139
our vdelta size is 198
libvdelta size is 593
our vdelta size is 780
libvdelta size is 830
our vdelta size is 1142
libvdelta size is 95
our vdelta size is 108
libvdelta size is 138
our vdelta size is 151
libvdelta size is 181
our vdelta size is 116
libvdelta size is 202
our vdelta size is 225
libvdelta size is 27
our vdelta size is 20
libvdelta size is 51
our vdelta size is 64
libvdelta size is 56
our vdelta size is 24
libvdelta size is 20
our vdelta size is 12
libvdelta size is 44
our vdelta size is 51
libvdelta size is 888
our vdelta size is 1258
libvdelta size is 851
our vdelta size is 1253
libvdelta size is 931
our vdelta size is 1287
libvdelta size is 884
our vdelta size is 1248
libvdelta size is 922
our vdelta size is 1195
libvdelta size is 26
our vdelta size is 16
libvdelta size is 19
our vdelta size is 12
libvdelta size is 22
our vdelta size is 16
libvdelta size is 18
our vdelta size is 12
libvdelta size is 22
our vdelta size is 16
libvdelta size is 69
our vdelta size is 64
libvdelta size is 42
our vdelta size is 28
libvdelta size is 398
our vdelta size is 530
libvdelta size is 194
our vdelta size is 205
libvdelta size is 49
our vdelta size is 47
libvdelta size is 37
our vdelta size is 28
libvdelta size is 62
our vdelta size is 65
libvdelta size is 84
our vdelta size is 101
libvdelta size is 169
our vdelta size is 186
libvdelta size is 126
our vdelta size is 138
libvdelta size is 162
our vdelta size is 155
libvdelta size is 23
our vdelta size is 12
libvdelta size is 164
our vdelta size is 95
libvdelta size is 23
our vdelta size is 12
libvdelta size is 264
our vdelta size is 352
libvdelta size is 233
our vdelta size is 287
libvdelta size is 22
our vdelta size is 12
libvdelta size is 25
our vdelta size is 16
libvdelta size is 42
our vdelta size is 28
libvdelta size is 58
our vdelta size is 50
libvdelta size is 140
our vdelta size is 158
libvdelta size is 27
our vdelta size is 16

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:05 2006

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.