contrib/revsetbenchmarks.py
changeset 25531 371d8afc9144
parent 25530 94efef10b63f
child 25532 1311aee85dcf
equal deleted inserted replaced
25530:94efef10b63f 25531:371d8afc9144
    90     sys.stdout.write("Revision: ")
    90     sys.stdout.write("Revision: ")
    91     sys.stdout.flush()
    91     sys.stdout.flush()
    92     check_call(['hg', 'log', '--rev', str(rev), '--template',
    92     check_call(['hg', 'log', '--rev', str(rev), '--template',
    93                '{desc|firstline}\n'])
    93                '{desc|firstline}\n'])
    94 
    94 
    95 def formatresult(data):
    95 def printresult(idx, data, maxidx):
    96     """format the data dict into a line of text for humans"""
    96     """print a line of result to stdout"""
    97     return ("wall %f comb %f user %f sys %f (best of %d)"
    97     mask = '%i) %s'
    98             % (data['wall'], data['comb'], data['user'],
       
    99                data['sys'], data['count']))
       
   100 
    98 
       
    99     out = ("wall %f comb %f user %f sys %f (best of %d)"
       
   100            % (data['wall'], data['comb'], data['user'],
       
   101               data['sys'], data['count']))
       
   102 
       
   103     print mask % (idx, out)
   101 
   104 
   102 def getrevs(spec):
   105 def getrevs(spec):
   103     """get the list of rev matched by a revset"""
   106     """get the list of rev matched by a revset"""
   104     try:
   107     try:
   105         out = check_output(['hg', 'log', '--template={rev}\n', '--rev', spec])
   108         out = check_output(['hg', 'log', '--template={rev}\n', '--rev', spec])
   154     res = []
   157     res = []
   155     results.append(res)
   158     results.append(res)
   156     for idx, rset in enumerate(revsets):
   159     for idx, rset in enumerate(revsets):
   157         data = perf(rset, target=options.repo)
   160         data = perf(rset, target=options.repo)
   158         res.append(data)
   161         res.append(data)
   159         print "%i)" % idx, formatresult(data)
   162         printresult(idx, data, len(revsets))
   160         sys.stdout.flush()
   163         sys.stdout.flush()
   161     print "----------------------------"
   164     print "----------------------------"
   162 
   165 
   163 
   166 
   164 print """
   167 print """
   178 
   181 
   179 for ridx, rset in enumerate(revsets):
   182 for ridx, rset in enumerate(revsets):
   180 
   183 
   181     print "revset #%i: %s" % (ridx, rset)
   184     print "revset #%i: %s" % (ridx, rset)
   182     for idx, data in enumerate(results):
   185     for idx, data in enumerate(results):
   183         print '%i) %s' % (idx, formatresult(data[ridx]))
   186         printresult(idx, data[ridx], len(results))
   184     print
   187     print