D868: changelog: use attrs instead of namedtuple
lothiraldan (Boris Feld)
phabricator at mercurial-scm.org
Mon Oct 23 10:40:57 EDT 2017
lothiraldan added a comment.
We detected a small performance regression on this changeset thanks to our ASV instance: http://perf.octobus.net/#regressions?sort=3&dir=desc (look for https://phab.mercurial-scm.org/rHGe51c8ffa1ffa3524e01cd1d1f60c79fc5ef02e43).
It seems to have slow down enough `hg id -r .` on Mercurial repository and `hg diff` on a clean Mercurial repository for ASV to detect it as a regression.
I'm dumping the raw results of asv compare because they are not available else-where if someone wants to take a look. Should I open a ticket on the bug tracker?
Benchmarks that have stayed the same:
before after ratio
[765eb17a] [e51c8ffa]
82.2±0.01ms 83.8±0.01ms 1.02 basic_commands.LogTimeTestSuite.time_log_history('mercurial-2017', 10)
218±0.01ms 221±0.06ms 1.01 basic_commands.LogTimeTestSuite.time_log_history('mercurial-2017', 100)
1.25±0s 1.26±0s 1.00 basic_commands.LogTimeTestSuite.time_log_history('mercurial-2017', 1000)
3.79±0s 3.79±0s 1.00 basic_commands.LogTimeTestSuite.time_log_history('mercurial-2017', 10000)
150±0.02ms 152±0.01ms 1.01 basic_commands.LogTimeTestSuite.time_log_history('mozilla-central-2017', 10)
165±0.02ms 166±0.01ms 1.00 basic_commands.LogTimeTestSuite.time_log_history('mozilla-central-2017', 100)
359±0.1ms 362±0.1ms 1.01 basic_commands.LogTimeTestSuite.time_log_history('mozilla-central-2017', 1000)
2.52±0s 2.52±0s 1.00 basic_commands.LogTimeTestSuite.time_log_history('mozilla-central-2017', 10000)
102±0.01ms 103±0ms 1.02 basic_commands.LogTimeTestSuite.time_log_history('netbeans-2017', 10)
138±0.01ms 140±0.02ms 1.01 basic_commands.LogTimeTestSuite.time_log_history('netbeans-2017', 100)
369±0.2ms 371±0.08ms 1.00 basic_commands.LogTimeTestSuite.time_log_history('netbeans-2017', 1000)
60.4±0ms 62.5±0ms 1.03 basic_commands.LogTimeTestSuite.time_log_history('pypy-2017', 10)
78.1±0ms 80.1±0.01ms 1.03 basic_commands.LogTimeTestSuite.time_log_history('pypy-2017', 100)
251±0.03ms 251±0.07ms 1.00 basic_commands.LogTimeTestSuite.time_log_history('pypy-2017', 1000)
7.57±0.01s 7.59±0s 1.00 basic_commands.LogTimeTestSuite.time_log_history('pypy-2017', 10000)
67.2ms 69.1ms 1.03 basic_commands.TestSuite.track_commit('mercurial-2017')
2.79s 2.80s 1.00 basic_commands.TestSuite.track_commit('mozilla-central-2017')
1.54s 1.54s 1.00 basic_commands.TestSuite.track_commit('netbeans-2017')
192ms 194ms 1.01 basic_commands.TestSuite.track_commit('pypy-2017')
38.2±0ms 39.9±0ms 1.05 basic_commands.TimeTestSuite.time_bookmarks('mercurial-2017')
44.7±0ms 46.8±0ms 1.05 basic_commands.TimeTestSuite.time_bookmarks('mozilla-central-2017')
43.4±0ms 45.5±0ms 1.05 basic_commands.TimeTestSuite.time_bookmarks('netbeans-2017')
38.5±0ms 40.6±0ms 1.05 basic_commands.TimeTestSuite.time_bookmarks('pypy-2017')
46.7±0ms 48.3±0ms 1.04 basic_commands.TimeTestSuite.time_diff_tip('mercurial-2017')
656±0.07ms 659±0.2ms 1.00 basic_commands.TimeTestSuite.time_diff_tip('mozilla-central-2017')
342±0.03ms 344±0.02ms 1.01 basic_commands.TimeTestSuite.time_diff_tip('netbeans-2017')
55.6±0ms 57.3±0ms 1.03 basic_commands.TimeTestSuite.time_diff_tip('pypy-2017')
43.9±0ms 46.1±0.2ms 1.05 basic_commands.TimeTestSuite.time_emptydiff('mercurial-2017')
870±0.08ms 873±0.03ms 1.00 basic_commands.TimeTestSuite.time_emptydiff('mozilla-central-2017')
408±0.08ms 410±0.02ms 1.01 basic_commands.TimeTestSuite.time_emptydiff('netbeans-2017')
57.1±0.01ms 58.9±0ms 1.03 basic_commands.TimeTestSuite.time_emptydiff('pypy-2017')
48.7±0ms 50.4±0ms 1.04 basic_commands.TimeTestSuite.time_emptystatus('mercurial-2017')
1.25±0s 1.25±0s 1.00 basic_commands.TimeTestSuite.time_emptystatus('mozilla-central-2017')
762±0.9ms 763±0.3ms 1.00 basic_commands.TimeTestSuite.time_emptystatus('netbeans-2017')
66.2±0.01ms 67.8±0ms 1.02 basic_commands.TimeTestSuite.time_emptystatus('pypy-2017')
45.0±0ms 46.7±0ms 1.04 basic_commands.TimeTestSuite.time_id('mercurial-2017')
872±0.1ms 874±0.01ms 1.00 basic_commands.TimeTestSuite.time_id('mozilla-central-2017')
413±0.1ms 416±0.04ms 1.01 basic_commands.TimeTestSuite.time_id('netbeans-2017')
57.7±0ms 59.5±0.01ms 1.03 basic_commands.TimeTestSuite.time_id('pypy-2017')
43.3±0ms 44.9±0ms 1.04 basic_commands.TimeTestSuite.time_id_current('mercurial-2017')
131±0.02ms 133±0.01ms 1.02 basic_commands.TimeTestSuite.time_id_current('mozilla-central-2017')
95.6±0.01ms 97.2±0.01ms 1.02 basic_commands.TimeTestSuite.time_id_current('netbeans-2017')
54.3±0ms 55.9±0.01ms 1.03 basic_commands.TimeTestSuite.time_id_current('pypy-2017')
43.6±0ms 45.2±0ms 1.04 basic_commands.TimeTestSuite.time_log_tip('mercurial-2017')
54.8±0ms 56.4±0ms 1.03 basic_commands.TimeTestSuite.time_log_tip('mozilla-central-2017')
57.6±0ms 59.3±0ms 1.03 basic_commands.TimeTestSuite.time_log_tip('netbeans-2017')
44.9±0ms 46.8±0ms 1.04 basic_commands.TimeTestSuite.time_log_tip('pypy-2017')
45.2±0ms 46.8±0ms 1.04 basic_commands.TimeTestSuite.time_status_tip('mercurial-2017')
579±0.07ms 581±0.09ms 1.00 basic_commands.TimeTestSuite.time_status_tip('mozilla-central-2017')
341±0.02ms 343±0.04ms 1.00 basic_commands.TimeTestSuite.time_status_tip('netbeans-2017')
53.7±0.01ms 55.4±0ms 1.03 basic_commands.TimeTestSuite.time_status_tip('pypy-2017')
54.0±0ms 55.9±0ms 1.04 basic_commands.TimeTestSuite.time_summary('mercurial-2017')
1.29±0s 1.29±0s 1.00 basic_commands.TimeTestSuite.time_summary('mozilla-central-2017')
790±0.1ms 793±0.01ms 1.00 basic_commands.TimeTestSuite.time_summary('netbeans-2017')
81.3±0ms 83.1±0ms 1.02 basic_commands.TimeTestSuite.time_summary('pypy-2017')
31.2±0ms 31.3±0ms 1.00 basic_commands.TimeTestSuite.time_version('mercurial-2017')
31.2±0ms 31.3±0ms 1.00 basic_commands.TimeTestSuite.time_version('mozilla-central-2017')
31.2±0ms 31.3±0ms 1.00 basic_commands.TimeTestSuite.time_version('netbeans-2017')
31.2±0ms 31.3±0ms 1.00 basic_commands.TimeTestSuite.time_version('pypy-2017')
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D868
To: sid0, #hg-reviewers, durin42
Cc: lothiraldan, mercurial-devel
More information about the Mercurial-devel
mailing list