# HG changeset patch # User Pierre-Yves David # Date 1495498987 -7200 # Node ID ad37c569ec8121a99e4cd9da52365b114b82e744 # Parent 12e241b2713ce44897c0bd19e8e16163b1b5d6e7 perfphases: add 'perfphases' command This commands benchmark the time spend computing the data in a repository. diff -r 12e241b2713c -r ad37c569ec81 contrib/perf.py --- a/contrib/perf.py Tue May 16 22:15:42 2017 -0700 +++ b/contrib/perf.py Tue May 23 02:23:07 2017 +0200 @@ -581,6 +581,17 @@ timer(d) fm.end() +@command('perfphases', [], "") +def perfphases(ui, repo, **opts): + """benchmark phasesets computation""" + timer, fm = gettimer(ui, opts) + phases = repo._phasecache + def d(): + phases.invalidate() + phases.loadphaserevs(repo) + timer(d) + fm.end() + @command('perfmanifest', [], 'REV') def perfmanifest(ui, repo, rev, **opts): timer, fm = gettimer(ui, opts) diff -r 12e241b2713c -r ad37c569ec81 tests/test-contrib-perf.t --- a/tests/test-contrib-perf.t Tue May 16 22:15:42 2017 -0700 +++ b/tests/test-contrib-perf.t Tue May 23 02:23:07 2017 +0200 @@ -93,6 +93,7 @@ perfparents (no help text available) perfpathcopies (no help text available) + perfphases benchmark phasesets computation perfrawfiles (no help text available) perfrevlog Benchmark reading a series of revisions from a revlog. perfrevlogchunks