I have begun developing benchmark utilities for LyX. These can be found by doing
  git clone g...@github.com:gmatht/Jankey.git
  cd Jankey/Benchmarks/

The Benchmark  basically involves spamming the following keycodes at LyX
  \Ac \D1 \Ac \D9 \D9 \Ao \D1\Av\D10 \Ai n n nnn \[Right] asdf \r \r
iadsf \Ao \Ca \D9 \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc
\Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv
\Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Ca \Cc \Cv
\Cv \Ca \Cc \Cv \Cv \Cc MEMINFO \Cq \Cs \Ad \Ad

This causes LyX to create line of text with a LyX Note, and then make
8192 copies the line. Replacing these keycodes is easy, and I am
intending to try to reproduce other performance bugs.

Running these benchmarks reports that that the resource usage of LyX
has been growing in a number of discrete jumps, the most significant
of these is r38163; increasing running time by about %15 and doubling
memory usage. This seems wrong to me; all r38163 is meant to do is
print some untranslated entries. I haven't been able to reproduce this
manually, but I get this result consistently with the benchmark tool.

Another result is that r38562 is three times faster than most other
revisions, I could try to find out why is this. It appears to work
correctly, so I don't know why performance suddenly got better and
then worse again.

r20010 11.02user 0.21system 0:27.76elapsed 40%CPU (344592maxresident)
r20010 11.51user 0.19system 0:21.21elapsed 55%CPU (344544maxresident)
r24000 Command terminated by signal 6 2.65user 0.15system
0:13.12elapsed 21%CPU (294992maxresident)
r25000 13.33user 0.16system 0:22.96elapsed 58%CPU (371584maxresident)
r26000 43.02user 0.19system 0:52.23elapsed 82%CPU (397792maxresident)
r27418 12.33user 0.16system 0:22.03elapsed 56%CPU (365344maxresident)
r29473 13.19user 0.26system 0:24.09elapsed 55%CPU (386736maxresident)
r29479 13.16user 0.30system 0:24.44elapsed 55%CPU (387184maxresident)
r29731 12.98user 0.18system 0:23.87elapsed 55%CPU (391824maxresident)
r29990 13.43user 0.25system 0:24.20elapsed 56%CPU (391968maxresident)
r30507 13.11user 0.25system 0:24.02elapsed 55%CPU (392304maxresident)
r30612 13.18user 0.18system 0:24.62elapsed 54%CPU (392208maxresident)
r31024 13.51user 0.36system 0:24.58elapsed 56%CPU (392368maxresident)
r31125 13.24user 0.29system 0:24.06elapsed 56%CPU (392912maxresident)
r31182 13.70user 0.27system 0:24.48elapsed 57%CPU (392592maxresident)
r31334 13.40user 0.34system 0:24.07elapsed 57%CPU (393056maxresident)
r31506 13.66user 0.33system 0:24.85elapsed 56%CPU (395152maxresident)
r31540 13.43user 0.24system 0:22.97elapsed 59%CPU (395376maxresident)
r31542 13.35user 0.28system 0:23.45elapsed 58%CPU (395472maxresident)
r32000 13.24user 0.22system 0:22.85elapsed 58%CPU (395536maxresident)
r32403 12.84user 0.14system 0:22.25elapsed 58%CPU (395728maxresident)
r32562 12.93user 0.12system 0:22.38elapsed 58%CPU (396000maxresident)
r32642 14.00user 0.25system 0:25.11elapsed 56%CPU (422256maxresident)
r32722 13.98user 0.36system 0:25.12elapsed 57%CPU (422704maxresident)
r32806 13.87user 0.30system 0:24.92elapsed 56%CPU (422752maxresident)
r33051 13.93user 0.22system 0:25.30elapsed 55%CPU (422752maxresident)
r33209 13.94user 0.10system 0:24.57elapsed 57%CPU (427312maxresident)
r33269 14.10user 0.11system 0:24.10elapsed 58%CPU (427296maxresident)
r33350 13.87user 0.11system 0:24.69elapsed 56%CPU (427072maxresident)
r33375 13.65user 0.20system 0:25.20elapsed 54%CPU (427280maxresident)
r33438 14.14user 0.16system 0:25.09elapsed 56%CPU (426944maxresident)
r33441 14.24user 0.15system 0:25.07elapsed 57%CPU (426928maxresident)
r33501 14.32user 0.34system 0:25.47elapsed 57%CPU (426928maxresident)
r33612 14.47user 0.24system 0:24.09elapsed 61%CPU (427888maxresident)
r33819 13.89user 0.13system 0:23.35elapsed 60%CPU (427024maxresident)
r33884 14.07user 0.22system 0:23.80elapsed 60%CPU (427072maxresident)
r34027 13.86user 0.23system 0:25.08elapsed 56%CPU (427392maxresident)
r34027 14.05user 0.23system 0:24.15elapsed 59%CPU (427344maxresident)
r34027 14.18user 0.13system 0:23.45elapsed 61%CPU (427616maxresident)
r34088 13.73user 0.17system 0:24.63elapsed 56%CPU (426800maxresident)
r34088 13.83user 0.13systk  basically involves spamming the following
keycodes at LyX
  \Ac \D1 \Ac \D9 \D9 \Ao \D1\Av\D10 \Ai n n nnn \[Right] asdf \r \r
iadsf \Ao \Ca \D9 \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc
\Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv
\Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Cc \Cv \Cv \Ca \Ca \Cc \Cv
\Cv \Ca \Cc \Cv \Cv \Cc MEMINFO \Cq \Cs \Ad \Ad

This causes LyX to create line of text with a LyX Note, and then make
8192 copies the line. Replacing these keycodes with others should be
easy.

Running these benchmarks reports that that the resource usage of LyX
has been growing in a number of discrete jumps, the most significant
of these is r38163; increasing running time by about %15 and doubling
memory usage. This seems wrong to me; all r38163 is meant to do is
print some untranslated entries. I haven't been able to reproduce this
manually, but I get this result consistently with the benchmark tool.

Another result is that r38562 is three times faster than most other
revisions, I could try to find out why is this. It appears to work
correctly, so I don't know why performance suddenly got better and
then worse again.em 0:24.00elapsed 58%CPU (427280maxresident)
r34088 13.88user 0.16system 0:24.36elapsed 57%CPU (426992maxresident)
r34091 13.75user 0.18system 0:24.14elapsed 57%CPU (427424maxresident)
r34091 13.79user 0.16system 0:24.52elapsed 56%CPU (426800maxresident)
r34091 13.84user 0.10system 0:25.06elapsed 55%CPU (427072maxresident)
r34092 13.75user 0.22system 0:24.19elapsed 57%CPU (426720maxresident)
r34092 13.79user 0.16system 0:25.01elapsed 55%CPU (427056maxresident)
r34092 13.92user 0.18system 0:25.19elapsed 55%CPU (427056maxresident)
r35673 13.48user 0.20system 0:24.29elapsed 56%CPU (453952maxresident)
r36221 13.73user 0.27system 0:24.08elapsed 58%CPU (453888maxresident)
r36656 13.75user 0.17system 0:24.05elapsed 57%CPU (458496maxresident)
r36825 13.92user 0.25system 0:24.52elapsed 57%CPU (468592maxresident)
r36909 14.02user 0.22system 0:24.11elapsed 59%CPU (467808maxresident)
r36972 14.11user 0.19system 0:25.35elapsed 56%CPU (468400maxresident)
r36994 14.13user 0.17system 0:25.13elapsed 56%CPU (458256maxresident)
r37055 14.00user 0.18system 0:25.88elapsed 54%CPU (458304maxresident)
r37080 13.88user 0.12system 0:25.91elapsed 54%CPU (458400maxresident)
r37186 13.82user 0.22system 0:25.97elapsed 54%CPU (458128maxresident)
r37292 14.09user 0.17system 0:26.16elapsed 54%CPU (468720maxresident)
r37395 14.67user 0.41system 0:27.09elapsed 55%CPU (469520maxresident)
r37460 14.19user 0.22system 0:24.97elapsed 57%CPU (469344maxresident)
r37462 14.32user 0.21system 0:26.21elapsed 55%CPU (469824maxresident)
r37463 14.18user 0.20system 0:25.91elapsed 55%CPU (469344maxresident)
r37499 13.71user 0.28system 0:24.25elapsed 57%CPU (458320maxresident)
r37568 14.00user 0.15system 0:24.59elapsed 57%CPU (458832maxresident)
r37662 14.12user 0.15system 0:24.09elapsed 59%CPU (458560maxresident)
r37686 13.91user 0.17system 0:25.23elapsed 55%CPU (458928maxresident)
r37747 13.76user 0.17system 0:23.92elapsed 58%CPU (458464maxresident)
r37752 13.87user 0.16system 0:24.21elapsed 57%CPU (458928maxresident)
r37828 14.17user 0.19system 0:25.38elapsed 56%CPU (458176maxresident)
r37852 14.28user 0.16system 0:25.69elapsed 56%CPU (458144maxresident)
r37859 14.66user 0.18system 0:26.01elapsed 57%CPU (458864maxresident)
r37905 14.12user 0.28system 0:25.69elapsed 56%CPU (458624maxresident)
r37923 14.23user 0.29system 0:25.71elapsed 56%CPU (458672maxresident)
r37981 13.85user 0.24system 0:25.54elapsed 55%CPU (458208maxresident)
r38010 13.83user 0.25system 0:25.99elapsed 54%CPU (458832maxresident)
r38017 14.17user 0.26system 0:26.66elapsed 54%CPU (468960maxresident)
r38018 13.96user 0.18system 0:25.27elapsed 55%CPU (469104maxresident)
r38020 14.20user 0.21system 0:25.46elapsed 56%CPU (469312maxresident)
r38024 14.03user 0.28system 0:24.97elapsed 57%CPU (468880maxresident)
r38039 14.22user 0.18system 0:25.06elapsed 57%CPU (468944maxresident)
r38122 14.45user 0.40system 0:24.75elapsed 59%CPU (468960maxresident)
r38150 14.52user 0.38system 0:25.23elapsed 59%CPU (469328maxresident)
r38160 15.44user 0.47system 0:29.48elapsed 53%CPU (469824maxresident)
r38162 14.84user 0.33system 0:25.60elapsed 59%CPU (469312maxresident)
r38163 16.66user 0.41system 0:28.04elapsed 60%CPU (878384maxresident)
r38164 16.32user 0.35system 0:27.85elapsed 59%CPU (877952maxresident)
r38262 16.49user 0.37system 0:26.20elapsed 64%CPU (877968maxresident)
r38318 16.50user 0.45system 0:26.34elapsed 64%CPU (800544maxresident)
r38346 16.75user 0.36system 0:27.93elapsed 61%CPU (800256maxresident)
r38360 16.45user 0.50system 0:28.36elapsed 59%CPU (800336maxresident)
r38361 16.34user 0.59system 0:27.82elapsed 60%CPU (800064maxresident)
r38363 16.35user 0.36system 0:27.88elapsed 59%CPU (800144maxresident)
r38367 16.51user 0.49system 0:28.08elapsed 60%CPU (799936maxresident)
r38375 16.35user 0.57system 0:27.56elapsed 61%CPU (799744maxresident)
r38456 15.76user 0.30system 0:26.62elapsed 60%CPU (799616maxresident)
r38483 15.93user 0.32system 0:28.11elapsed 57%CPU (799824maxresident)
r38548 15.77user 0.34system 0:26.84elapsed 60%CPU (799888maxresident)
r38562 5.16user 0.20system 0:15.54elapsed 34%CPU (713248maxresident)
r38562 5.37user 0.29system 0:17.09elapsed 33%CPU (713488maxresident)
r38569 15.63user 0.24system 0:25.56elapsed 62%CPU (799840maxresident)
r38569 15.99user 0.29system 0:29.69elapsed 54%CPU (800224maxresident)
r38570 15.70user 0.24system 0:25.53elapsed 62%CPU (799888maxresident)
r38571 15.62user 0.23system 0:25.78elapsed 61%CPU (799792maxresident)
r38572 15.49user 0.37system 0:25.84elapsed 61%CPU (799824maxresident)
r38576 15.82user 0.22system 0:27.10elapsed 59%CPU (800144maxresident)
r38604 15.78user 0.36system 0:26.82elapsed 60%CPU (800048maxresident)
r38607 16.05user 0.25system 0:27.52elapsed 59%CPU (799664maxresident)
r38650 15.88user 0.22system 0:27.08elapsed 59%CPU (800144maxresident)
r38710 16.00user 0.24system 0:26.89elapsed 60%CPU (800176maxresident)
r38773 15.54user 0.30system 0:27.41elapsed 57%CPU (799824maxresident)
r38776 15.59user 0.31system 0:27.34elapsed 58%CPU (799904maxresident)
r38826 15.97user 0.23system 0:26.83elapsed 60%CPU (799824maxresident)
r38837 15.60user 0.29system 0:27.66elapsed 57%CPU (799792maxresident)
r38838 15.57user 0.37system 0:27.34elapsed 58%CPU (799872maxresident)
r38839 15.46user 0.30system 0:25.77elapsed 61%CPU (800512maxresident)
r38840 15.91user 0.18system 0:25.22elapsed 63%CPU (800224maxresident)
r38843 15.64user 0.28system 0:24.91elapsed 63%CPU (800640maxresident)
r38846 15.67user 0.28system 0:25.37elapsed 62%CPU (800064maxresident)
r38847 15.83user 0.28system 0:25.57elapsed 62%CPU (800448maxresident)
r38849 15.97user 0.29system 0:27.46elapsed 59%CPU (799920maxresident)
r38850 15.44user 0.26system 0:27.12elapsed 57%CPU (800160maxresident)
r38851 15.70user 0.26system 0:27.28elapsed 58%CPU (799824maxresident)
r38853 15.83user 0.32system 0:26.98elapsed 59%CPU (800224maxresident)
r38854 16.12user 0.29system 0:27.97elapsed 58%CPU (799840maxresident)
r38855 15.93user 0.39system 0:27.42elapsed 59%CPU (800208maxresident)
r38856 15.70user 0.29system 0:25.42elapsed 62%CPU (800416maxresident)
r38857 16.16user 0.25system 0:27.61elapsed 59%CPU (809616maxresident)
r38858 15.70user 0.29system 0:27.56elapsed 58%CPU (800160maxresident)
r38860 15.59user 0.36system 0:28.67elapsed 55%CPU (800016maxresident)
r38862 15.94user 0.30system 0:26.11elapsed 62%CPU (800528maxresident)
r38865 15.63user 0.32system 0:26.38elapsed 60%CPU (809872maxresident)
r38866 15.39user 0.40system 0:25.97elapsed 60%CPU (800784maxresident)
r38867 16.07user 0.28system 0:26.50elapsed 61%CPU (809824maxresident)
r38868 15.81user 0.37system 0:27.25elapsed 59%CPU (800064maxresident)
r38869 15.85user 0.35system 0:27.09elapsed 59%CPU (800288maxresident)
r38871 15.95user 0.40system 0:27.13elapsed 60%CPU (799888maxresident)
r38872 15.64user 0.32system 0:26.85elapsed 59%CPU (800288maxresident)
r38873 15.95user 0.28system 0:27.75elapsed 58%CPU (799968maxresident)
r38902 15.51user 0.34system 0:27.33elapsed 57%CPU (800624maxresident)
r39196 15.76user 0.25system 0:27.72elapsed 57%CPU (800352maxresident)
r39220 15.95user 0.24system 0:27.21elapsed 59%CPU (800192maxresident)
r39240 15.67user 0.29system 0:25.20elapsed 63%CPU (800944maxresident)
r39243 16.76user 0.39system 0:28.84elapsed 59%CPU (800464maxresident)

-- 
John C. McCabe-Dansted

Reply via email to