some timings using bzr
robert.collins at gmail.com
Fri Jul 11 10:53:50 BST 2008
On Fri, 2008-07-11 at 08:21 +0200, David Ingamells wrote:
A simple copy of the repository (including the .bzr directory) from
NFS to a local disk on desk01 takes 3.1 seconds and NFS to NFS takes
84 seconds at a low-load time of day. Clearly there is significant
room for improvement in bzr when you compare the closest bzr
equivalents to this copy (36 and 187 seconds). From an admittedly
very naive perspective, the branch bzr makes is only a copy of the
repos (when branch is used without options).
bzr verifies the data it copies; its much more than just a copy. That
said, we improve things every chance we get :).
The time shown for each test is the best seen of the few runs I did.
Especially with the NFS to NFS tests I saw huge variations (e.g. from
13 minutes to 38 minutes for one test). The tests show:
File:// is better than bzr:// when using a local destination.
Surprisingly bzr:// across the network was quicker than bzr:// used on
the same machine.
Using bzr:// locally means you have twice the overhead - you have bzr
running twice and processing data twice. So I'd expect it to be
slower. When you have two machines each gets to share the load.
With regard to formats - we are continually looking at things we can
improve with regard to the disk formats we use. So 'old' really refers
to how much we have learnt since we made a specific format the
default. We have a pipeline of things we believe will bring better
tradeoffs, solve bugs, increase performance etc. I expect we'll
continue to bring these into experimental and development formats, and
do regular drops to 'stable' formats that we then support and make
default. We also add features that don't actually change the
underlying storage, but do change how we use the data stored in the
store; these require format marker changes to prevent incorrect
behaviour by older clients.
For instance, the pack-0.92 format is very robust, but it is not as
compact on disk as we'd like, and we have some ideas about how to
improve this that are being experimented with now.
More information about the bazaar