RIO benchmark results
John Arbash Meinel
john at arbash-meinel.com
Tue May 12 14:57:47 BST 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Martin Pool wrote:
> 2009/5/12 Ian Clatworthy <ian.clatworthy at internode.on.net>:
>>> That was a bit surprising to me. Could it really be spending so much
>>> time reading and writing revision texts that it more than doubles the
>>> time to copy the whole repository?
>>>
>>> I'd suspect it was using an inter-format fetch, except that you did
>>> say you'd done the conversion first.
>> The import to dev7 format was done in advance. It took around 11 hours.
>>
>> The *real* problem is that even the "good" figure is crap. We need
>> something like http://bazaar-vcs.org/DraftSpecs/FeatureBranching to
>> address that, making the operation take 3.2 seconds instead of 3.2 minutes.
>
> I agree with all that, but I'm still surprised that copying the data
> took more than twice as long with only the serializer changed,
> therefore I suspect something other than the serializer has changed,
> or we're reading the revision texts far more often than we should.
>
> At any rate your other benchmark numbers do show we shouldn't just
> drop this in without more work.
>
I don't know if the two of you saw my earlier post about the RIOReader.
It has a quadratic bit with large fields that I 'fixed'. Namely it was
doing:
value = ''
loop:
value += more_text
rather than
value = []
loop:
value.append(more_text)
value = ''.join(value)
For doing something equivalent to 'bzr log mysql' this was 3min => 3s
(where XML was 1.5s).
I don't see where 'bzr branch' would really be effected by this, since
it should be copying the bytes, and not reading them... (Certainly I
could be wrong about that.)
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkoJgFsACgkQJdeBCYSNAAMaMwCdHdq5JjbIxwPrAkjNHpuu007B
+7sAnRh+2XUnSNNvcK53EzIQbd29eeJU
=Mlj6
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list