view tests/test-committer.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 5c5d23d93447
children f84f507c53d3
line wrap: on
line source

changeset:   0:9426b370c206
tag:         tip
user:        My Name <myname@example.com>
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     commit-1

changeset:   1:4997f15a1b24
tag:         tip
user:        foo@bar.com
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     commit-1

changeset:   2:72b8012b424e
tag:         tip
user:        foobar <foo@bar.com>
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     commit-1

changeset:   3:35ff3067bedd
tag:         tip
user:        foo@bar.com
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     commit-1

transaction abort!
rollback completed
abort: Please specify a username.
No username found, using user@host instead