[PATCH 1 of 4] perf: add a perfloadmarkers command

Pierre-Yves David pierre-yves.david at ens-lyon.org
Sun Nov 30 01:57:41 UTC 2014


# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1416529675 28800
#      Thu Nov 20 16:27:55 2014 -0800
# Node ID 04eb7e49d2b6f90f71aa85de9ad0b4d70670d688
# Parent  9da5a7413eb8bc3e708eee62bc38342c8ff7f917
perf: add a perfloadmarkers command

It is used to perfmark the obsstore initialisation time.

diff --git a/contrib/perf.py b/contrib/perf.py
--- a/contrib/perf.py
+++ b/contrib/perf.py
@@ -523,5 +523,14 @@ def perfbranchmap(ui, repo, full=False):
             timer(getbranchmap(name), title=str(name))
     finally:
         branchmap.read = oldread
         branchmap.branchcache.write = oldwrite
     fm.end()
+
+ at command('perfloadmarkers')
+def perfloadmarkers(ui, repo):
+    """benchmark the time to parse the ondisk marker for a repo
+
+    Result is the number of marker in the repo."""
+    timer, fm = gettimer(ui)
+    timer(lambda: len(obsolete.obsstore(repo.sopener)))
+    fm.end()


More information about the Mercurial-devel mailing list