contrib/benchmarks/perf.py
author Raphaël Gomès <rgomes@octobus.net>
Mon, 28 Feb 2022 18:34:23 +0100
branchstable
changeset 48805 d4486810a179
parent 43076 2372284d9457
child 48875 6000f5b25c9b
permissions -rw-r--r--
merge: remove direct rustmod reference We shouldn't rely on this member being present in `dirstate.py`, this creates unnecessary coupling. This also can trigger certain issues in edge-cases where the policy is changed at runtime or multiple Python environments fight, which is an added bonus. Differential Revision: https://phab.mercurial-scm.org/D12217

# perf.py - asv benchmarks using contrib/perf.py extension
#
# Copyright 2016 Logilab SA <contact@logilab.fr>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.

from __future__ import absolute_import

from . import perfbench


@perfbench()
def track_tags(perf):
    return perf("perftags")


@perfbench()
def track_status(perf):
    return perf("perfstatus", unknown=False)


@perfbench(params=[('rev', ['1000', '10000', 'tip'])])
def track_manifest(perf, rev):
    return perf("perfmanifest", rev)


@perfbench()
def track_heads(perf):
    return perf("perfheads")