annotate tests/test-contrib-perf.t @ 51353:5cc04a6da19d

delta-find: move the emotion of parents in a dedicated method After splitting the filtering, and with the `_candidate_groups` layer removed, we can start splitting the group generation too. This helps to organize this code and make it easier to modifying the future.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 23 Nov 2023 21:51:43 +0100
parents 1c4180d49baf
children 8fc92193a2cf
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)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
304 ! wall * comb * user * sys * (max of 15) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
305 ! wall * comb * user * sys * (avg of 15) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
306 ! wall * comb * user * sys * (median of 15) (glob)
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
307
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
308 Multiple entries
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
309
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
310 $ 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
311 ! wall * comb * user * sys * (best of 50) (glob)
51177
1c4180d49baf test: use more globing for perf timing
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50993
diff changeset
312 ! wall * comb * user * sys * (max of 50) (glob)
1c4180d49baf test: use more globing for perf timing
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50993
diff changeset
313 ! wall * comb * user * sys * (avg of 50) (glob)
1c4180d49baf test: use more globing for perf timing
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50993
diff changeset
314 ! wall * comb * user * sys * (median of 50) (glob)
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
315
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
316 error case are ignored
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
317
50622
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='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
319 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
320 ! wall * comb * user * sys * (best of 50) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
321 ! wall * comb * user * sys * (max of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
322 ! wall * comb * user * sys * (avg of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
323 ! wall * comb * user * sys * (median of 50) (glob)
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
324 $ 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
325 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
326 ! wall * comb * user * sys * (best of 50) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
327 ! wall * comb * user * sys * (max of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
328 ! wall * comb * user * sys * (avg of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
329 ! wall * comb * user * sys * (median of 50) (glob)
50622
553865308b15 test: make test-contrib-perf.t more robust
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 49876
diff changeset
330 $ 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
331 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
332 ! wall * comb * user * sys * (best of 50) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
333 ! wall * comb * user * sys * (max of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
334 ! wall * comb * user * sys * (avg of 50) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
335 ! wall * comb * user * sys * (median of 50) (glob)
42019
5a1e621b8186 perf: introduce a `perf.run-limits` options
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42016
diff changeset
336
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
337 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
338 ------------------
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
339
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
340 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
341
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
342 $ 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
343 ! wall * comb * user * sys * (best of *) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
344 ! wall * comb * user * sys * (max of *) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
345 ! wall * comb * user * sys * (avg of *) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
346 ! wall * comb * user * sys * (median of *) (glob)
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
347
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
348 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
349
55101513ed94 perf: add a 'perf.all-timing' option to display more than best time
Boris Feld <boris.feld@octobus.net>
parents: 38693
diff changeset
350 $ 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
351 ! 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
352 ! 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
353 ! 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
354 ! 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
355
40141
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
356 test json output
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 normal output:
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
360
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
361 $ hg perfheads --template json --config perf.stub=no
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
362 [
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
363 {
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
364 "avg.comb": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
365 "avg.count": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
366 "avg.sys": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
367 "avg.user": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
368 "avg.wall": *, (glob)
40141
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
369 "comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
370 "count": *, (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
371 "max.comb": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
372 "max.count": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
373 "max.sys": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
374 "max.user": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
375 "max.wall": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
376 "median.comb": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
377 "median.count": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
378 "median.sys": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
379 "median.user": *, (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
380 "median.wall": *, (glob)
40141
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
381 "sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
382 "user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
383 "wall": * (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
384 }
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
385 ]
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
386
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
387 detailed output:
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
388
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
389 $ 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
390 [
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
391 {
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
392 "avg.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
393 "avg.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
394 "avg.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
395 "avg.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
396 "avg.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
397 "comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
398 "count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
399 "max.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
400 "max.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
401 "max.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
402 "max.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
403 "max.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
404 "median.comb": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
405 "median.count": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
406 "median.sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
407 "median.user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
408 "median.wall": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
409 "sys": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
410 "user": *, (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
411 "wall": * (glob)
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
412 }
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
413 ]
8643219146e1 perf: fix -T json
Boris Feld <boris.feld@octobus.net>
parents: 39318
diff changeset
414
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
415 Test pre-run feature
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
416 --------------------
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
417
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
418 (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
419
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
420 $ 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
421 ! wall * comb * user * sys * (best of 1) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
422 ! wall * comb * user * sys * (max of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
423 ! wall * comb * user * sys * (avg of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
424 ! wall * comb * user * sys * (median of 1) (glob)
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
425 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
426 $ 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
427 ! wall * comb * user * sys * (best of 1) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
428 ! wall * comb * user * sys * (max of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
429 ! wall * comb * user * sys * (avg of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
430 ! wall * comb * user * sys * (median of 1) (glob)
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
431 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
432 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
433 $ 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
434 ! wall * comb * user * sys * (best of 1) (glob)
50802
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
435 ! wall * comb * user * sys * (max of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
436 ! wall * comb * user * sys * (avg of 1) (glob)
cf0502231d56 perf: display all timing by default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50725
diff changeset
437 ! wall * comb * user * sys * (median of 1) (glob)
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
438 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
439 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
440 searching for changes
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
441 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
442 $ 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
443 $ 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
444 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
445 $ 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
446
42359
563cd9a72682 perf: add a `pre-run` option
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42063
diff changeset
447
42360
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
448 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
449 ------------------------------
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
450
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
451 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
452 $ statprofran () {
50725
7e5be4a7cda7 tests: use grep -E instead of obsolescent egrep
Mads Kiilerich <mads@kiilerich.com>
parents: 50686
diff changeset
453 > 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
454 > }
3293086ff663 perf: add an option to profile the benchmark section
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42359
diff changeset
455 $ 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
456
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
457 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
458 ----------------------------------------
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
459
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
460 $ 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
461
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
462 $ (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
463 > 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
464 > "$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
465 contrib/perf.py:\d+: (re)
35109
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
466 > from mercurial import (
e96613048bdd perf: add command to benchmark bundle reading
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
467 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
468 contrib/perf.py:\d+: (re)
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
469 > from mercurial import (
1732db2f8210 perf: add a perfphasesremote command
Boris Feld <boris.feld@octobus.net>
parents: 38695
diff changeset
470 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
471 contrib/perf.py:\d+: (re)
47148
a07d5cb03a85 revlog: rename `indexfile` to `_indexfile`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46388
diff changeset
472 > origindexpath = orig.opener.join(indexfile)
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
473 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
474 contrib/perf.py:\d+: (re)
47149
396442cd7e6a revlog: rename `datafile` to `datafile`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47148
diff changeset
475 > origdatapath = orig.opener.join(datafile)
40550
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
476 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
477 contrib/perf.py:\d+: (re)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
478 > vfs = vfsmod.vfs(tmpdir)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
479 use getvfs()/getsvfs() for early Mercurial
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
480 contrib/perf.py:\d+: (re)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
481 > vfs.options = getattr(orig.opener, 'options', None)
164b2e77f9a5 perf: introduce a perfrevlogwrite command
Boris Feld <boris.feld@octobus.net>
parents: 40141
diff changeset
482 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
483 [1]