FYI: New mercurial performance measurements (handling of large files)
Christoph.Spiel at partner.bmw.de
Christoph.Spiel at partner.bmw.de
Fri Oct 19 04:23:28 CDT 2007
Hi all!
Some weeks ago we conducted performance
measurements of Mercurial with large (> 1MB)
files. The results were somewhat disappointing.
Meanwhile Matt and others have improved on the
crucial "bdiff"-operation. The resulting
speed-up is significant (10x-300x). In fact
now Mercurial is fast enough to survive a
real-life test with one of our projects.
We took 99 revisions of a project from our
current SCM system and timed the duration of
Mercurial's "commit"- and "push"-operations.
The repository used as target for "push" resided
on a server accessible via LAN. The work-area
contained about 4000 files, where in each commit
at least 12 files were larger than 1MB, the
largest files occupying almost 70MB. The total
size of all 99 work-areas was about 20GB. On
the average 1000 files changed between two
revisions.
We show the detailed results in the attached
graphics file. In particulkar, we would like to
note:
(1) The size of the repository is always small
even for a project with a large number of
"binary" files after a high number of
commits. We found a compression ratio
(total data size over repository size) of
about 14.
(2) The "commit"-duration never exceeded 4
minutes compared to several hours before the
performance patches, despite the 12 large
files.
(3) The "push"-duration always was below 8 minutes
again compared to several hours (or more like:
"overnight") before the performance patches.
Most importantly, neither the "commit"-duration,
nor the "push"-duration show an increase over
the live of the project. They both stay in a
band between 20-230 seconds for "commit" and
40-460 seconds for "push". This means Mercurial
users won't get punished by maintaining a big,
old repository with a huge number of commited
versions.
To summarize: Mercurial is not only capable of
working with large projects containing large
files, but it handles them surprisingly fast - a
real joy to use.
Best,
Chris
--
Dr. Christoph L. Spiel
BMW Forschungs- und Innovationszentrum, EA-410
Lauchstaedterstrasse 5, 80995 Muenchen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hg-0.9.5pre1-preformance.png
Type: image/png
Size: 13596 bytes
Desc: hg-0.9.5pre1-preformance.png
Url : http://selenic.com/pipermail/mercurial/attachments/20071019/3f58c002/attachment.png
More information about the Mercurial
mailing list