annotate tests/test-contrib-perf.t @ 50938:f02b62b7b056 stable

perf: introduce more cache invalidation option in perf::tags This will help us to assert the performance of different versions in more diverse situations. We introduce helper function in the tags module in case invalidating such cache becomes different in the future.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 22 Jun 2023 16:03:18 +0200
parents 7e5be4a7cda7
children 12c308c55e53
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
1 #require test-repo
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
2
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
3 Set vars:
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
4
29219
3c9066ed557c tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents: 27526
diff changeset
5 $ . "$TESTDIR/helpers-testrepo.sh"
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
6 $ CONTRIBDIR="$TESTDIR/../contrib"
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
7
27309
b0de270acd17 tests: use a single repo for test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27286
diff changeset
8 Prepare repo:
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
9
27309
b0de270acd17 tests: use a single repo for test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27286
diff changeset
10 $ hg init
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
11
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
12 $ echo this is file a > a
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
13 $ hg add a
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
14 $ hg commit -m first
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
15
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
16 $ echo adding to file a >> a
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
17 $ hg commit -m second
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
18
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
19 $ echo adding more to file a >> a
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
20 $ hg commit -m third
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
21
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
22 $ hg up -r 0
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
23 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
24 $ echo merge-this >> a
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
25 $ hg commit -m merge-able
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
26 created new head
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
27
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
28 $ hg up -r 2
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
29 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
30
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
31 perfstatus
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
32
27309
b0de270acd17 tests: use a single repo for test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27286
diff changeset
33 $ cat >> $HGRCPATH << EOF
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
34 > [extensions]
42014
d93436e2ca6b tests: use "perf" as a the extension name in test-contrib-perf.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41469
diff changeset
35 > perf=$CONTRIBDIR/perf.py
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
36 > [perf]
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
37 > presleep=0
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
38 > stub=on
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
39 > parentscount=1
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
40 > EOF
42014
d93436e2ca6b tests: use "perf" as a the extension name in test-contrib-perf.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41469
diff changeset
41 $ hg help -e perf
d93436e2ca6b tests: use "perf" as a the extension name in test-contrib-perf.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41469
diff changeset
42 perf extension - helper extension to measure performance
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
43
42015
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
44 Configurations
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
45 ==============
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
46
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
47 "perf"
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
48 ------
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
49
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
50 "all-timing"
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
51 When set, additional statistics will be reported for each benchmark: best,
42015
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
52 worst, median average. If not set only the best timing is reported
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
53 (default: off).
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
54
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
55 "presleep"
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
56 number of second to wait before any group of runs (default: 1)
42015
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
57
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
58 "pre-run"
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
59 number of run to perform before starting measurement.
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
60
42360
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
61 "profile-benchmark"
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
62 Enable profiling for the benchmarked section. (The first iteration is
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
63 benchmarked)
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
64
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
65 "run-limits"
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
66 Control the number of runs each benchmark will perform. The option value
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
67 should be a list of '<time>-<numberofrun>' pairs. After each run the
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
68 conditions are considered in order with the following logic:
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
69
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
70 If benchmark has been running for <time> seconds, and we have performed
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
71 <numberofrun> iterations, stop the benchmark,
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
72
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
73 The default value is: '3.0-100, 10.0-3'
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
74
42015
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
75 "stub"
42021
4c700c847aa2 perf: copyedit a few documentation strings
Augie Fackler <augie@google.com>
parents: 42019
diff changeset
76 When set, benchmarks will only be run once, useful for testing (default:
42015
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
77 off)
dbca2e5563c3 perf: document config options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42014
diff changeset
78
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
79 list of commands:
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
80
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
81 perf::addremove
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
82 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
83 perf::ancestors
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
84 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
85 perf::ancestorset
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
86 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
87 perf::annotate
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
88 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
89 perf::bdiff benchmark a bdiff between revisions
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
90 perf::bookmarks
32733
2b0a8b0f3435 perf: add a perfbookmarks command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32532
diff changeset
91 benchmark parsing bookmarks from disk to memory
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
92 perf::branchmap
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
93 benchmark the update of a branchmap
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
94 perf::branchmapload
39114
222aba766015 perf: time loading branchmap caches
Martijn Pieters <mj@octobus.net>
parents: 38969
diff changeset
95 benchmark reading the branchmap
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
96 perf::branchmapupdate
40768
f723014677a5 perf: add a `perfbranchmapupdate` command
Boris Feld <boris.feld@octobus.net>
parents: 40750
diff changeset
97 benchmark branchmap update from for <base> revs to <target>
f723014677a5 perf: add a `perfbranchmapupdate` command
Boris Feld <boris.feld@octobus.net>
parents: 40750
diff changeset
98 revs
49411
b081a5aab782 perf-bundle: add a new command to benchmark bundle creation time
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48874
diff changeset
99 perf::bundle benchmark the creation of a bundle from a repository
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
100 perf::bundleread
35109
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
101 Benchmark reading of bundle files.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
102 perf::cca (no help text available)
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
103 perf::changegroupchangelog
30018
bd6df07ccc24 perf: add perfchangegroupchangelog command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29974
diff changeset
104 Benchmark producing a changelog group for a changegroup.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
105 perf::changeset
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
106 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
107 perf::ctxfiles
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
108 (no help text available)
49438
44d4fd09982f perf: introduce a benchmark for delta-find
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49414
diff changeset
109 perf::delta-find
44d4fd09982f perf: introduce a benchmark for delta-find
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49414
diff changeset
110 benchmark the process of finding a valid delta for a revlog
44d4fd09982f perf: introduce a benchmark for delta-find
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49414
diff changeset
111 revision
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
112 perf::diffwd Profile diff of working directory changes
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
113 perf::dirfoldmap
43127
0b32206c3c86 perf: document `perfdirfoldmap`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43125
diff changeset
114 benchmap a 'dirstate._map.dirfoldmap.get()' request
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
115 perf::dirs (no help text available)
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
116 perf::dirstate
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
117 benchmap the time of various distate operations
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
118 perf::dirstatedirs
43123
69301b79fd36 perf: document `perfdirstatedirs`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43121
diff changeset
119 benchmap a 'dirstate.hasdir' call from an empty 'dirs' cache
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
120 perf::dirstatefoldmap
43125
56494a2bfe2f perf: document `perfdirstatefoldmap`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43123
diff changeset
121 benchmap a 'dirstate._map.filefoldmap.get()' request
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
122 perf::dirstatewrite
43129
97f9ef777a75 perf: document `perfdirstatewrite`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43127
diff changeset
123 benchmap the time it take to write a dirstate on disk
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
124 perf::discovery
40941
db6cace18765 perfdiscovery: benching findcommonheads()
Georges Racinet <gracinet@anybox.fr>
parents: 40925
diff changeset
125 benchmark discovery between local repo and the peer at given
db6cace18765 perfdiscovery: benching findcommonheads()
Georges Racinet <gracinet@anybox.fr>
parents: 40925
diff changeset
126 path
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
127 perf::fncacheencode
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
128 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
129 perf::fncacheload
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
130 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
131 perf::fncachewrite
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
132 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
133 perf::heads benchmark the computation of a changelog heads
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
134 perf::helper-mergecopies
42385
21c436a3a4e8 perf: add a `perfhelper-mergecopies` command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42384
diff changeset
135 find statistics about potential parameters for
21c436a3a4e8 perf: add a `perfhelper-mergecopies` command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42384
diff changeset
136 'perfmergecopies'
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
137 perf::helper-pathcopies
40691
a65fe13de84f perf: add a new `perfhelper-tracecopies` command
Boris Feld <boris.feld@octobus.net>
parents: 40550
diff changeset
138 find statistic about potential parameters for the
a65fe13de84f perf: add a new `perfhelper-tracecopies` command
Boris Feld <boris.feld@octobus.net>
parents: 40550
diff changeset
139 'perftracecopies'
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
140 perf::ignore benchmark operation related to computing ignore
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
141 perf::index benchmark index creation time followed by a lookup
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
142 perf::linelogedits
38969
1601afbb573c perf: add a command to benchmark linelog edits
Jun Wu <quark@fb.com>
parents: 38695
diff changeset
143 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
144 perf::loadmarkers
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
145 benchmark the time to parse the on-disk markers for a repo
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
146 perf::log (no help text available)
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
147 perf::lookup (no help text available)
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
148 perf::lrucachedict
27286
528cf1a73ae5 perf: add perflrucachedict command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27101
diff changeset
149 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
150 perf::manifest
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
151 benchmark the time to read a manifest from disk and return a
38693
9b6a708f2263 perf: document the perfmanifest command
Boris Feld <boris.feld@octobus.net>
parents: 38258
diff changeset
152 usable
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
153 perf::mergecalculate
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
154 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
155 perf::mergecopies
42384
f5f0a9490c05 perf: add a new `perfmergecopies` command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42360
diff changeset
156 measure runtime of 'copies.mergecopies'
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
157 perf::moonwalk
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
158 benchmark walking the changelog backwards
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
159 perf::nodelookup
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
160 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
161 perf::nodemap
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
162 benchmark the time necessary to look up revision from a cold
41469
c9ff93889550 perf: add a perfnodemap command
Boris Feld <boris.feld@octobus.net>
parents: 41437
diff changeset
163 nodemap
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
164 perf::parents
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
165 benchmark the time necessary to fetch one changeset's parents.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
166 perf::pathcopies
40739
dc3ab5e5fe64 perf: add a docstring to `perfpathcopies`
Boris Feld <boris.feld@octobus.net>
parents: 40720
diff changeset
167 benchmark the copy tracing logic
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
168 perf::phases benchmark phasesets computation
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
169 perf::phasesremote
39140
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
170 benchmark time needed to analyse phases of the remote server
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
171 perf::progress
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
172 printing of progress bars
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
173 perf::rawfiles
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
174 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
175 perf::revlogchunks
30451
94ca0e13d1fc perf: add command for measuring revlog chunk operations
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30426
diff changeset
176 Benchmark operations on revlog chunks.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
177 perf::revlogindex
32532
e4f514627514 perf: benchmark command for revlog indexes
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32531
diff changeset
178 Benchmark operations against a revlog index.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
179 perf::revlogrevision
27470
d394a1a3708a perf: add perfrevlogrevision
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27315
diff changeset
180 Benchmark obtaining a revlog revision.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
181 perf::revlogrevisions
32531
7236facefd4f perf: rename perfrevlog to perfrevlogrevisions
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32467
diff changeset
182 Benchmark reading a series of revisions from a revlog.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
183 perf::revlogwrite
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
184 Benchmark writing a series of revisions to a revlog.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
185 perf::revrange
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
186 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
187 perf::revset benchmark the execution time of a revset
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
188 perf::startup
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
189 (no help text available)
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
190 perf::status benchmark the performance of a single status call
50686
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
191 perf::stream-consume
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
192 benchmark the full application of a stream clone
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
193 perf::stream-generate
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
194 benchmark the full generation of a stream clone
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
195 perf::stream-locked-section
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50622
diff changeset
196 benchmark the initial, repo-locked, section of a stream-clone
50938
f02b62b7b056 perf: introduce more cache invalidation option in perf::tags
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
197 perf::tags Benchmark tags retrieval in various situation
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
198 perf::templating
38258
ae6e02fcee24 perftemplating: allow to specify the template to test
Boris Feld <boris.feld@octobus.net>
parents: 37416
diff changeset
199 test the rendering time of a given template
49414
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
200 perf::unbundle
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
201 benchmark application of a bundle in a repository.
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
202 perf::unidiff
46354
b8d8fd2fe75f perf: use the `perf--` prefix for perf command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 44996
diff changeset
203 benchmark a unified diff between revisions
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
204 perf::volatilesets
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
205 benchmark the computation of various volatile set
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
206 perf::walk (no help text available)
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
207 perf::write microbenchmark ui.write (and others)
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
208
42014
d93436e2ca6b tests: use "perf" as a the extension name in test-contrib-perf.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 41469
diff changeset
209 (use 'hg help -v perf' to show built-in aliases and global options)
46387
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
210
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
211 $ hg help perfaddremove
46388
d8ad391e10f5 command-namespace: use `::` are the command separator
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46387
diff changeset
212 hg perf::addremove
46387
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
213
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
214 aliases: perfaddremove
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
215
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
216 (no help text available)
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
217
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
218 options:
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
219
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
220 -T --template TEMPLATE display with template
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
221
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
222 (some details hidden, use --verbose to show complete help)
c41ac8985fe4 perf: test the formatting of a command help
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46354
diff changeset
223
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
224 $ hg perfaddremove
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
225 $ hg perfancestors
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
226 $ hg perfancestorset 2
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
227 $ hg perfannotate a
30307
c8fa7ad1ff90 perf: add perfbdiff
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30018
diff changeset
228 $ hg perfbdiff -c 1
30426
605e3b126d46 perf: unbust perfbdiff --alldata
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30336
diff changeset
229 $ hg perfbdiff --alldata 1
35861
ed939545edd0 perf: add a perfunidiff command for benchmarking unified diff speed
Augie Fackler <augie@google.com>
parents: 35599
diff changeset
230 $ hg perfunidiff -c 1
ed939545edd0 perf: add a perfunidiff command for benchmarking unified diff speed
Augie Fackler <augie@google.com>
parents: 35599
diff changeset
231 $ hg perfunidiff --alldata 1
32733
2b0a8b0f3435 perf: add a perfbookmarks command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32532
diff changeset
232 $ hg perfbookmarks
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
233 $ hg perfbranchmap
40720
0a3cc351d718 perf: fallback to subset if ondisk cache is missing in perfbranchmapload
Boris Feld <boris.feld@octobus.net>
parents: 40713
diff changeset
234 $ hg perfbranchmapload
40768
f723014677a5 perf: add a `perfbranchmapupdate` command
Boris Feld <boris.feld@octobus.net>
parents: 40750
diff changeset
235 $ hg perfbranchmapupdate --base "not tip" --target "tip"
f723014677a5 perf: add a `perfbranchmapupdate` command
Boris Feld <boris.feld@octobus.net>
parents: 40750
diff changeset
236 benchmark of branchmap with 3 revisions with 1 new ones
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
237 $ hg perfcca
30018
bd6df07ccc24 perf: add perfchangegroupchangelog command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29974
diff changeset
238 $ hg perfchangegroupchangelog
40713
cfaf3843491b perf: rename version flag of perfchangegroupchangelog to cgversion
Pulkit Goyal <pulkit@yandex-team.ru>
parents: 40691
diff changeset
239 $ hg perfchangegroupchangelog --cgversion 01
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
240 $ hg perfchangeset 2
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
241 $ hg perfctxfiles 2
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
242 $ hg perfdiffwd
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
243 $ hg perfdirfoldmap
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
244 $ hg perfdirs
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
245 $ hg perfdirstate
43197
0c4efb6eb4fa perf: introduce a `--contains` flag to the `perfdirstate` command
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43196
diff changeset
246 $ hg perfdirstate --contains
43196
5f9b1250b82a perf: introduce a `--iteration` to `perfdirstate`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43129
diff changeset
247 $ hg perfdirstate --iteration
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
248 $ hg perfdirstatedirs
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
249 $ hg perfdirstatefoldmap
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
250 $ hg perfdirstatewrite
37416
7542e97c7867 tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37338
diff changeset
251 #if repofncache
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
252 $ hg perffncacheencode
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
253 $ hg perffncacheload
38695
2cdb82e8fb44 perffncachewrite: load fncache after lock is acquired
Boris Feld <boris.feld@octobus.net>
parents: 38694
diff changeset
254 $ hg debugrebuildfncache
2cdb82e8fb44 perffncachewrite: load fncache after lock is acquired
Boris Feld <boris.feld@octobus.net>
parents: 38694
diff changeset
255 fncache already up to date
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
256 $ hg perffncachewrite
38695
2cdb82e8fb44 perffncachewrite: load fncache after lock is acquired
Boris Feld <boris.feld@octobus.net>
parents: 38694
diff changeset
257 $ hg debugrebuildfncache
2cdb82e8fb44 perffncachewrite: load fncache after lock is acquired
Boris Feld <boris.feld@octobus.net>
parents: 38694
diff changeset
258 fncache already up to date
37416
7542e97c7867 tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37338
diff changeset
259 #endif
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
260 $ hg perfheads
40750
45a0047c0ebc perf: add a perfignore command
Boris Feld <boris.feld@octobus.net>
parents: 40740
diff changeset
261 $ hg perfignore
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
262 $ hg perfindex
38969
1601afbb573c perf: add a command to benchmark linelog edits
Jun Wu <quark@fb.com>
parents: 38695
diff changeset
263 $ hg perflinelogedits -n 1
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
264 $ hg perfloadmarkers
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
265 $ hg perflog
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
266 $ hg perflookup 2
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
267 $ hg perflrucache
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
268 $ hg perfmanifest 2
39318
c03c5f528e9b perf: use storage API for resolving manifest node
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39147
diff changeset
269 $ hg perfmanifest -m 44fe2c8352bb3a478ffd7d8350bbc721920134d1
c03c5f528e9b perf: use storage API for resolving manifest node
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39147
diff changeset
270 $ hg perfmanifest -m 44fe2c8352bb
c03c5f528e9b perf: use storage API for resolving manifest node
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39147
diff changeset
271 abort: manifest revision must be integer or full node
c03c5f528e9b perf: use storage API for resolving manifest node
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39147
diff changeset
272 [255]
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
273 $ hg perfmergecalculate -r 3
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
274 $ hg perfmoonwalk
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
275 $ hg perfnodelookup 2
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
276 $ hg perfpathcopies 1 2
40925
008f3491dc53 perf: add perfprogress command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 40768
diff changeset
277 $ hg perfprogress --total 1000
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
278 $ hg perfrawfiles 2
32532
e4f514627514 perf: benchmark command for revlog indexes
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32531
diff changeset
279 $ hg perfrevlogindex -c
37338
cbc4425e81b5 tests: conditionalize tests based on presence of revlogs for files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35861
diff changeset
280 #if reporevlogstore
32531
7236facefd4f perf: rename perfrevlog to perfrevlogrevisions
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32467
diff changeset
281 $ hg perfrevlogrevisions .hg/store/data/a.i
37338
cbc4425e81b5 tests: conditionalize tests based on presence of revlogs for files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35861
diff changeset
282 #endif
27470
d394a1a3708a perf: add perfrevlogrevision
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27315
diff changeset
283 $ hg perfrevlogrevision -m 0
30451
94ca0e13d1fc perf: add command for measuring revlog chunk operations
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30426
diff changeset
284 $ hg perfrevlogchunks -c
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
285 $ hg perfrevrange
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
286 $ hg perfrevset 'all()'
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
287 $ hg perfstartup
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
288 $ hg perfstatus
43436
bfc68404cccd perf: add a way to benchmark `dirstate.status`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 43197
diff changeset
289 $ hg perfstatus --dirstate
27315
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
290 $ hg perftags
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
291 $ hg perftemplating
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
292 $ hg perfvolatilesets
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
293 $ hg perfwalk
be48b7559422 tests: drop require slow in test-contrib-perf
timeless <timeless@mozdev.org>
parents: 27309
diff changeset
294 $ hg perfparents
40941
db6cace18765 perfdiscovery: benching findcommonheads()
Georges Racinet <gracinet@anybox.fr>
parents: 40925
diff changeset
295 $ hg perfdiscovery -q .
27101
61fbf5dc12b2 test-contrib-perf: add smoke tests for perf.py
timeless <timeless@mozdev.org>
parents:
diff changeset
296
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
297 Test run control
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
298 ----------------
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
299
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
300 Simple single entry
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
301
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
302 $ hg perfparents --config perf.stub=no --config perf.run-limits='0.000000001-15'
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
303 ! wall * comb * user * sys * (best of 15) (glob)
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
304
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
305 Multiple entries
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
306
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
307 $ hg perfparents --config perf.stub=no --config perf.run-limits='500000-1, 0.000000001-50'
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
308 ! wall * comb * user * sys * (best of 50) (glob)
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
309
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
310 error case are ignored
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
311
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
312 $ hg perfparents --config perf.stub=no --config perf.run-limits='500, 0.000000001-50'
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
313 malformatted run limit entry, missing "-": 500
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
314 ! wall * comb * user * sys * (best of 50) (glob)
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
315 $ hg perfparents --config perf.stub=no --config perf.run-limits='aaa-120, 0.000000001-50'
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
316 malformatted run limit entry, could not convert string to float: 'aaa': aaa-120
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
317 ! wall * comb * user * sys * (best of 50) (glob)
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
318 $ hg perfparents --config perf.stub=no --config perf.run-limits='120-aaaaaa, 0.000000001-50'
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
319 malformatted run limit entry, invalid literal for int() with base 10: 'aaaaaa': 120-aaaaaa
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
320 ! wall * comb * user * sys * (best of 50) (glob)
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
321
38694
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
322 test actual output
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
323 ------------------
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
324
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
325 normal output:
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
326
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
327 $ hg perfheads --config perf.stub=no
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
328 ! wall * comb * user * sys * (best of *) (glob)
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
329
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
330 detailed output:
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
331
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
332 $ hg perfheads --config perf.all-timing=yes --config perf.stub=no
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
333 ! wall * comb * user * sys * (best of *) (glob)
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
334 ! wall * comb * user * sys * (max of *) (glob)
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
335 ! wall * comb * user * sys * (avg of *) (glob)
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
336 ! wall * comb * user * sys * (median of *) (glob)
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
337
40141
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
338 test json output
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
339 ----------------
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
340
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
341 normal output:
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
342
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
343 $ hg perfheads --template json --config perf.stub=no
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
344 [
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
345 {
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
346 "comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
347 "count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
348 "sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
349 "user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
350 "wall": * (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
351 }
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
352 ]
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
353
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
354 detailed output:
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
355
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
356 $ hg perfheads --template json --config perf.all-timing=yes --config perf.stub=no
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
357 [
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
358 {
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
359 "avg.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
360 "avg.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
361 "avg.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
362 "avg.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
363 "avg.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
364 "comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
365 "count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
366 "max.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
367 "max.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
368 "max.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
369 "max.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
370 "max.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
371 "median.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
372 "median.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
373 "median.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
374 "median.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
375 "median.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
376 "sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
377 "user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
378 "wall": * (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
379 }
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
380 ]
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
381
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
382 Test pre-run feature
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
383 --------------------
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
384
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
385 (perf discovery has some spurious output)
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
386
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
387 $ hg perfdiscovery . --config perf.stub=no --config perf.run-limits='0.000000001-1' --config perf.pre-run=0
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
388 ! wall * comb * user * sys * (best of 1) (glob)
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
389 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
390 $ hg perfdiscovery . --config perf.stub=no --config perf.run-limits='0.000000001-1' --config perf.pre-run=1
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
391 ! wall * comb * user * sys * (best of 1) (glob)
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
392 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
393 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
394 $ hg perfdiscovery . --config perf.stub=no --config perf.run-limits='0.000000001-1' --config perf.pre-run=3
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
395 ! wall * comb * user * sys * (best of 1) (glob)
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
396 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
397 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
398 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
399 searching for changes
49411
b081a5aab782 perf-bundle: add a new command to benchmark bundle creation time
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48874
diff changeset
400 $ hg perf::bundle 'last(all(), 5)'
49414
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
401 $ hg bundle --exact --rev 'last(all(), 5)' last-5.hg
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
402 4 changesets found
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
403 $ hg perf::unbundle last-5.hg
3c5d0f879404 perf-unbundle: add a perf command to time the unbundle operation
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49411
diff changeset
404
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
405
42360
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
406 test profile-benchmark option
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
407 ------------------------------
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
408
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
409 Function to check that statprof ran
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
410 $ statprofran () {
50725
7e5be4a7cda7 tests: use grep -E instead of obsolescent egrep
Mads Kiilerich <mads@kiilerich.com>
parents: 50686
diff changeset
411 > grep -E 'Sample count:|No samples recorded' > /dev/null
42360
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
412 > }
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
413 $ hg perfdiscovery . --config perf.stub=no --config perf.run-limits='0.000000001-1' --config perf.profile-benchmark=yes 2>&1 | statprofran
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
414
29570
cbd240188e4e tests: introduce check-perf-code.py to add extra checks on perf.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29219
diff changeset
415 Check perf.py for historical portability
38694
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
416 ----------------------------------------
29570
cbd240188e4e tests: introduce check-perf-code.py to add extra checks on perf.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29219
diff changeset
417
cbd240188e4e tests: introduce check-perf-code.py to add extra checks on perf.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29219
diff changeset
418 $ cd "$TESTDIR/.."
cbd240188e4e tests: introduce check-perf-code.py to add extra checks on perf.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29219
diff changeset
419
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
420 $ (testrepohg files -r 1.2 glob:mercurial/*.c glob:mercurial/*.py;
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
421 > testrepohg files -r tip glob:mercurial/*.c glob:mercurial/*.py) |
29571
d1a7d9c279bb tests: check importing modules in perf.py for historical portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 29570
diff changeset
422 > "$TESTDIR"/check-perf-code.py contrib/perf.py
35599
af25237be091 perf: add threading capability to perfbdiff
Boris Feld <boris.feld@octobus.net>
parents: 35109
diff changeset
423 contrib/perf.py:\d+: (re)
35109
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
424 > from mercurial import (
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
425 import newer module separately in try clause for early Mercurial
39140
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
426 contrib/perf.py:\d+: (re)
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
427 > from mercurial import (
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
428 import newer module separately in try clause for early Mercurial
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
429 contrib/perf.py:\d+: (re)
47148
a07d5cb03a85 revlog: rename `indexfile` to `_indexfile`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46388
diff changeset
430 > origindexpath = orig.opener.join(indexfile)
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
431 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
432 contrib/perf.py:\d+: (re)
47149
396442cd7e6a revlog: rename `datafile` to `datafile`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47148
diff changeset
433 > origdatapath = orig.opener.join(datafile)
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
434 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
435 contrib/perf.py:\d+: (re)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
436 > vfs = vfsmod.vfs(tmpdir)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
437 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
438 contrib/perf.py:\d+: (re)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
439 > vfs.options = getattr(orig.opener, 'options', None)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
440 use getvfs()/getsvfs() for early Mercurial
35109
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
441 [1]