view tests/test-convert-hg-sink.out @ 5339:058e93c3d07d

I have spotted the biggest bottleneck in "bdiff.c". Actually it was pretty easy to find after I recompiled the python interpreter and mercurial for profiling. In "bdiff.c" function "equatelines" allocates the minimum hash table size, which can lead to tons of collisions. I introduced an "overcommit" factor of 16, this is, I allocate 16 times more memory than the minimum value. Overcommiting 128 times does not improve the performance over the 16-times case.
author Christoph Spiel <cspiel@freenet.de>
date Thu, 27 Sep 2007 23:57:57 -0500
parents 2dbd750b3ddd
children 61fdf2558c0a
line wrap: on
line source

changeset:   3:593cbf6fb2b4
tag:         tip
user:        test
date:        Thu Jan 01 00:00:00 1970 +0000
summary:     Added tag some-tag for changeset ad681a868e44

changeset:   2:ad681a868e44
tag:         some-tag
user:        test
date:        Thu Jan 01 00:00:00 1970 +0000
summary:     add foo/file

changeset:   1:cbba8ecc03b7
user:        test
date:        Thu Jan 01 00:00:00 1970 +0000
summary:     remove foo

changeset:   0:327daa9251fa
user:        test
date:        Thu Jan 01 00:00:00 1970 +0000
summary:     add foo and bar

initializing destination new repository
scanning source...
sorting...
converting...
3 add foo and bar
2 remove foo
1 add foo/file
0 Added tag some-tag for changeset ad681a868e44
comparing with ../orig
searching for changes
no changes found
% dirstate should be empty:
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
% put something in the dirstate:
a   0         -1 unset             baz
copy: bar -> baz
% add a new revision in the original repo
destination new is a Mercurial repository
scanning source...
sorting...
converting...
0 add baz
comparing with ../orig
searching for changes
no changes found
% dirstate should be the same (no output below):
% no copies
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
baz not renamed