Benchmark: Git 1.6.3.3, Hg 1.3.1, Bzr 1.17
Jean-Francois Roy
bahamut at macstorm.org
Tue Aug 18 00:03:07 BST 2009
On Aug 17, 2009, at 14:18, Jari Aalto wrote:
>> If you didn't make one, it would be nice to see numbers with a 2a
>> repository.
>
> I actually wanted to check if shared repositories would help, so I
> added
> a test case (option --bzr-shared in script):
>
> ./.bzr (shared repository)
> |
> +-- linux-source-2.6.30 (+1 big patch commit to donwgrade to
> 2.6.NN -1)
> |
> +- 1.branch ( branch off linux-source-2.6.30 )
> +- 2.branch ( branch off linux-source-2.6.30 )
>
> # test was done like this, measuring 'times' of the 'branch'
> commands
>
> cd linux-source-2.6.30/
> bzr init-repo -q --2a ..
> bzr init -q --2a
> bzr branch . ../1.branch
> bzr branch . ../2.branch
>
> I didn't notice any performance difference.
>
> The branching within shared repository gave similar numbers that plain
> "full clone" to the other side of local disk:
>
> cd linux-source-2.6.30/
> bzr clone . /tmp/tmp-clone.bzr
>
> Maybe I'm doing something wrong.
>
> Please let me know if there is something that I could improve in
> tests [2].
You could try adding --no-trees to the init-repo command. I don't know
about Hg and Git, but assuming that when you clone a branch they do
not create a new working tree for it, then --no-trees would be the
matching behavior in bzr. Otherwise, the branch operation is not only
going to do the branch of the history (which should be fast in a
shared repository), but will also create a new working tree, which
could be very slow due to the massive amount of disk access involved.
Jean-François
More information about the bazaar
mailing list