On Sun, Dec 2, 2018 at 7:23 PM Boris Feld <boris.f...@octobus.net> wrote:
> # HG changeset patch > # User Boris Feld <boris.f...@octobus.net> > # Date 1542949784 -3600 > # Fri Nov 23 06:09:44 2018 +0100 > # Node ID 9708243274585f9544c70925eb0b0fa0ec7aba4f > # Parent 0fff68dfbe48d87dce8b8736c0347ed5aa79030e > # EXP-Topic mmap > # Available At https://bitbucket.org/octobus/mercurial-devel/ > # hg pull https://bitbucket.org/octobus/mercurial-devel/ -r > 970824327458 > mmapindex: set default to 1MB > > mmapping index is more efficient if we only need a small part of it. > > The 1MB value has been picked arbitrarily, a lower value might be better. > On a large repository with a 60MB index, we see the following performance > gain: > > hg perfindex > before: ! wall 0.032023 comb 0.040000 user 0.000000 sys 0.040000 (best of > 100) > after: ! wall 0.000196 comb 0.000000 user 0.000000 sys 0.000000 (best of > 1060) > > The speed boost benefit all cases, including the one where the full index > needs to be parsed. > > hg perfindex --rev 0 > before: ! wall 0.040673 comb 0.030000 user 0.000000 sys 0.030000 (best of > 100) > after ! wall 0.010713 comb 0.020000 user 0.010000 sys 0.010000 (best of > 212) > > This gain reflect in higher level operation: > > hg perfbookmarks --clear-revlogs > before: ! wall 0.161339 comb 0.160000 user 0.130000 sys 0.030000 (best of > 56) > after: ! wall 0.123228 comb 0.120000 user 0.120000 sys 0.000000 (best of > 68) > I can confirm that it is a required config option on large repos and result in similar speedups. Looks good to me, queued the series. Many thanks!
_______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel