Re: Yelp Speedup
- From: Shaun McCance <shaunm gnome org>
- To: gnome-doc-devel-list gnome org
- Subject: Re: Yelp Speedup
- Date: Wed, 14 Dec 2005 12:41:42 -0600
On Tue, 2005-12-13 at 20:21 +0000, Don Scorgie wrote:
> Hi list,
>
> I was looking at speeding yelp up a bit for docbook parsing and
> discovered the bottleneck is related to gettext.xsl [1]
>
> Yelp seems to be opening and reading its content 215 times for the user
> guide!
>
> I looked through the stylesheets from gnome-doc-utils and noticed it is
> imported 4 times in different files:
> 1: html/db2html.xsl
> 2: common/db-label.xsl
> 3: common/db-title.xsl
> 4: common/db-xref.xsl
>
> Removing the <xsl:import href="../../gettext/gettext.xsl"> commands from
> the files in common improves Yelps parsing ability by an order of
> magnitude
> (Stopwatch timings from clicking the Relevant document in the TOC):
> User guide
> Before: ~ 57s
> After: ~ 3s
>
> Gnumeric
> Before: ~ 1m 2s
> After: ~ 4s
>
> Zenity
> Before: ~3s
> After: < 1s
>
> A little bit of an improvement there ;) So, my question is this:
> Is it possible to remove these import statements and get this speed
> boost? Do other packages depend on gnome-doc-utils that this will
> affect?
Just to provide some data, for the curious: I have a
script called timeall that processes all the docs under
/usr/share/gnome/help and gives me timings for each one.
I can then compare output to look for regressions, and
compare timings to make sure they're really faster.
I ran timeall with and without the patch. The outputs
were exactly the same, which is good. I've attached
a tab-seperated list of the timings. The columns are
the document, the HEAD timing, the with-patch timing,
and the fraction of the HEAD timing decreased. Any
positive value is good, and values close to 1 are
excellent. Negative numbers are bad. The file is
sorted by the last column, worst to best.
--
Shaun
gcalctool/fr | 2743 | 2863 | -.04374772147283995625 |
aisleriot/C | 2571 | 2504 | .02605989887203422792 |
user-guide/C | 5838 | 5557 | .04813292223364165810 |
gcalctool/zh_CN | 2702 | 2503 | .07364914877868245743 |
gcalctool/zh_HK | 2751 | 2505 | .08942202835332606324 |
gcalctool/de | 2774 | 2516 | .09300648882480173035 |
gcalctool/it | 2935 | 2662 | .09301533219761499148 |
gcalctool/zh_TW | 2747 | 2484 | .09574080815435020021 |
evolution-2.4/C | 2732 | 2410 | .11786237188872620790 |
file-roller/sv | 1182 | 1039 | .12098138747884940778 |
gcalctool/es | 2829 | 2456 | .13184870979144574054 |
file-roller/it | 1214 | 1051 | .13426688632619439868 |
file-roller/ko | 1165 | 988 | .15193133047210300429 |
system-admin-guide/C | 1933 | 1624 | .15985514743921365752 |
gcalctool/sv | 3004 | 2488 | .17177097203728362183 |
file-roller/ja | 1193 | 985 | .17435037720033528918 |
file-roller/fr | 1288 | 1051 | .18400621118012422360 |
control-center/C | 1061 | 864 | .18567389255419415645 |
file-roller/es | 1355 | 1101 | .18745387453874538745 |
gcalctool/ko | 2989 | 2427 | .18802275008364001338 |
gnome-doc-xslt/C | 1919 | 1544 | .19541427826993225638 |
gcalctool/ja | 2932 | 2294 | .21759890859481582537 |
gnome-access-guide/C | 2271 | 1776 | .21796565389696169088 |
gcalctool/C | 3320 | 2580 | .22289156626506024096 |
gedit/sv | 1105 | 853 | .22805429864253393665 |
file-roller/zh_HK | 1241 | 957 | .22884770346494762288 |
gdm/es | 2007 | 1540 | .23268560039860488290 |
zenity/C | 790 | 601 | .23924050632911392405 |
epiphany/ja | 1531 | 1164 | .23971260613977792292 |
dia/en | 1112 | 842 | .24280575539568345323 |
epiphany/C | 1546 | 1167 | .24514877102199223803 |
epiphany/es | 1524 | 1135 | .25524934383202099737 |
gdm/C | 2347 | 1713 | .27013208351086493395 |
dia/C | 1121 | 818 | .27029438001784121320 |
gedit/eu | 1102 | 804 | .27041742286751361161 |
epiphany/fi | 1672 | 1185 | .29126794258373205741 |
planner/C | 1027 | 725 | .29406037000973709834 |
file-roller/C | 1386 | 975 | .29653679653679653679 |
gedit/ja | 1078 | 757 | .29777365491651205936 |
gedit/fr | 1090 | 762 | .30091743119266055045 |
file-roller/de | 1351 | 943 | .30199851961509992598 |
gedit/ko | 1105 | 761 | .31131221719457013574 |
gedit/de | 1107 | 759 | .31436314363143631436 |
window-list/ko | 616 | 422 | .31493506493506493506 |
gedit/zh_CN | 1111 | 757 | .31863186318631863186 |
gnopernicus/C | 1432 | 971 | .32192737430167597765 |
gedit/zh_TW | 1103 | 744 | .32547597461468721668 |
gedit/es | 1127 | 758 | .32741792369121561668 |
gedit/it | 1147 | 764 | .33391455972101133391 |
gedit/zh_HK | 1119 | 742 | .33690795352993744414 |
gedit/ro | 907 | 598 | .34068357221609702315 |
gedit/C | 1204 | 793 | .34136212624584717607 |
file-roller/zh_TW | 1402 | 918 | .34522111269614835948 |
gthumb/C | 1588 | 1038 | .34634760705289672544 |
window-list/sv | 616 | 402 | .34740259740259740259 |
zenity/sr | 745 | 486 | .34765100671140939597 |
file-roller/zh_CN | 1458 | 945 | .35185185185185185185 |
epiphany/uk | 1740 | 1120 | .35632183908045977011 |
window-list/de | 657 | 419 | .36225266362252663622 |
file-roller/uk | 1470 | 936 | .36326530612244897959 |
file-roller/ru | 764 | 485 | .36518324607329842931 |
window-list/uk | 618 | 392 | .36569579288025889967 |
rhythmbox/C | 1009 | 639 | .36669970267591674925 |
totem/C | 817 | 516 | .36842105263157894736 |
workspace-switcher/zh_CN | 620 | 389 | .37258064516129032258 |
workspace-switcher/zh_TW | 608 | 381 | .37335526315789473684 |
rhythmbox/ja | 972 | 609 | .37345679012345679012 |
gnome-terminal/uk | 900 | 556 | .38222222222222222222 |
window-list/ja | 629 | 388 | .38314785373608903020 |
totem/es | 816 | 501 | .38602941176470588235 |
totem/de | 807 | 495 | .38661710037174721189 |
window-list/it | 698 | 428 | .38681948424068767908 |
gconf-editor/C | 732 | 443 | .39480874316939890710 |
blackjack/C | 840 | 508 | .39523809523809523809 |
window-list/fr | 692 | 412 | .40462427745664739884 |
gdm/zh_HK | 745 | 441 | .40805369127516778523 |
workspace-switcher/ja | 606 | 357 | .41089108910891089108 |
bug-buddy/C | 706 | 415 | .41218130311614730878 |
workspace-switcher/C | 595 | 346 | .41848739495798319327 |
window-list/es | 666 | 386 | .42042042042042042042 |
sound-juicer/es | 763 | 442 | .42070773263433813892 |
window-list/zh_TW | 616 | 356 | .42207792207792207792 |
epiphany/eu | 1217 | 703 | .42235004108463434675 |
sound-juicer/C | 753 | 434 | .42363877822045152722 |
window-list/zh_CN | 616 | 355 | .42370129870129870129 |
gnome-terminal/ko | 752 | 433 | .42420212765957446808 |
workspace-switcher/ko | 618 | 355 | .42556634304207119741 |
workspace-switcher/sv | 621 | 356 | .42673107890499194847 |
gnomemeeting/C | 739 | 423 | .42760487144790257104 |
gnome-terminal/ja | 778 | 442 | .43187660668380462724 |
bug-buddy/pa | 721 | 409 | .43273231622746185852 |
gnome-terminal/zh_CN | 759 | 430 | .43346508563899868247 |
workspace-switcher/es | 612 | 346 | .43464052287581699346 |
eog/es | 688 | 385 | .44040697674418604651 |
gnome-terminal/ro | 786 | 439 | .44147582697201017811 |
gnome-terminal/zh_TW | 754 | 421 | .44164456233421750663 |
gataxx/C | 684 | 381 | .44298245614035087719 |
workspace-switcher/nl | 620 | 344 | .44516129032258064516 |
gnome-search-tool/uk | 728 | 402 | .44780219780219780219 |
totem/ru | 797 | 439 | .44918444165621079046 |
eog/ko | 745 | 410 | .44966442953020134228 |
gok/C | 1308 | 719 | .45030581039755351681 |
eog/uk | 815 | 448 | .45030674846625766871 |
command-line/C | 730 | 400 | .45205479452054794520 |
char-palette/nl | 666 | 364 | .45345345345345345345 |
glines/C | 713 | 388 | .45582047685834502103 |
eog/C | 769 | 418 | .45643693107932379713 |
gnome-search-tool/C | 736 | 400 | .45652173913043478260 |
gweather/es | 738 | 400 | .45799457994579945799 |
eog/it | 810 | 439 | .45802469135802469135 |
gnome-terminal/sv | 809 | 436 | .46106304079110012360 |
workspace-switcher/it | 611 | 329 | .46153846153846153846 |
gucharmap/sv | 721 | 388 | .46185852981969486823 |
evince/C | 753 | 404 | .46347941567065073041 |
gdm/sv | 652 | 349 | .46472392638036809815 |
fish-applet-2/zh_TW | 611 | 327 | .46481178396072013093 |
modemlights/eu | 729 | 390 | .46502057613168724279 |
gnomemeeting/fr | 765 | 409 | .46535947712418300653 |
multiload/C | 733 | 391 | .46657571623465211459 |
eog/de | 685 | 365 | .46715328467153284671 |
gnome-terminal/it | 800 | 424 | .47000000000000000000 |
gnome-terminal/fr | 820 | 433 | .47195121951219512195 |
gnome-stones/C | 745 | 392 | .47382550335570469798 |
gweather/C | 765 | 401 | .47581699346405228758 |
iagno/C | 746 | 391 | .47587131367292225201 |
workspace-switcher/uk | 609 | 318 | .47783251231527093596 |
gucharmap/es | 742 | 387 | .47843665768194070080 |
gucharmap/ko | 736 | 382 | .48097826086956521739 |
gnomine/C | 752 | 390 | .48138297872340425531 |
eog/ja | 700 | 363 | .48142857142857142857 |
gnome-cd/fr | 685 | 354 | .48321167883211678832 |
gucharmap/de | 749 | 386 | .48464619492656875834 |
gnometris/C | 781 | 402 | .48527528809218950064 |
accessx-status/C | 539 | 277 | .48608534322820037105 |
gucharmap/zh_CN | 758 | 389 | .48680738786279683377 |
mahjongg/C | 696 | 357 | .48706896551724137931 |
gnome-terminal/C | 1071 | 549 | .48739495798319327731 |
workspace-switcher/fr | 607 | 311 | .48764415156507413509 |
gucharmap/zh_TW | 715 | 365 | .48951048951048951048 |
fdl/eu | 788 | 401 | .49111675126903553299 |
gucharmap/ja | 718 | 364 | .49303621169916434540 |
eog/fr | 756 | 383 | .49338624338624338624 |
workspace-switcher/de | 617 | 312 | .49432739059967585089 |
char-palette/C | 689 | 347 | .49637155297532656023 |
grecord/it | 713 | 359 | .49649368863955119214 |
gnome-cd/nl | 711 | 354 | .50210970464135021097 |
gdm/fr | 663 | 327 | .50678733031674208144 |
fish-applet-2/uk | 657 | 321 | .51141552511415525114 |
gnopernicus/es | 813 | 393 | .51660516605166051660 |
battstat/C | 673 | 325 | .51708766716196136701 |
cpufreq-applet/C | 665 | 321 | .51729323308270676691 |
gnome-terminal/es | 1087 | 523 | .51885924563017479300 |
gnome-search-tool/es | 732 | 352 | .51912568306010928961 |
fdl/C | 812 | 390 | .51970443349753694581 |
fish-applet-2/ko | 631 | 303 | .51980982567353407290 |
gucharmap/it | 804 | 384 | .52238805970149253731 |
eog/eu | 777 | 370 | .52380952380952380952 |
gdm/zh_TW | 795 | 376 | .52704402515723270440 |
bug-buddy/sr | 825 | 390 | .52727272727272727272 |
lgpl/eu | 780 | 368 | .52820512820512820512 |
eog/zh_TW | 765 | 360 | .52941176470588235294 |
gnome-terminal/de | 929 | 426 | .54144241119483315392 |
gucharmap/fr | 847 | 386 | .54427390791027154663 |
gdm/de | 668 | 302 | .54790419161676646706 |
eog/sv | 730 | 328 | .55068493150684931506 |
grecord/zh_TW | 712 | 318 | .55337078651685393258 |
gnome-system-monitor/C | 1627 | 726 | .55377996312231100184 |
dasher/C | 658 | 291 | .55775075987841945288 |
eog/zh_CN | 852 | 373 | .56220657276995305164 |
fish-applet-2/sv | 698 | 303 | .56590257879656160458 |
gfloppy/uk | 654 | 278 | .57492354740061162079 |
gnobots2/C | 709 | 298 | .57968970380818053596 |
clock/fr | 634 | 266 | .58044164037854889589 |
gfloppy/C | 621 | 258 | .58454106280193236714 |
fish-applet-2/fr | 635 | 261 | .58897637795275590551 |
clock/it | 597 | 242 | .59463986599664991624 |
gnome-search-tool/sv | 683 | 276 | .59590043923865300146 |
gnome-doc-make/C | 592 | 238 | .59797297297297297297 |
fish-applet-2/it | 665 | 267 | .59849624060150375939 |
trashapplet/C | 601 | 241 | .59900166389351081530 |
gnome-system-log/de | 811 | 324 | .60049321824907521578 |
gnome-search-tool/ko | 681 | 271 | .60205580029368575624 |
gnome-cd/ko | 684 | 272 | .60233918128654970760 |
gnome-search-tool/zh_TW | 685 | 272 | .60291970802919708029 |
gfloppy/ja | 651 | 258 | .60368663594470046082 |
fish-applet-2/zh_CN | 803 | 318 | .60398505603985056039 |
gnome-cd/C | 692 | 274 | .60404624277456647398 |
gnome-cd/it | 685 | 271 | .60437956204379562043 |
gnome-search-tool/it | 680 | 268 | .60588235294117647058 |
gnome-cd/sv | 695 | 273 | .60719424460431654676 |
gnibbles/C | 702 | 275 | .60826210826210826210 |
gnobots2/da | 687 | 269 | .60844250363901018922 |
stickynotes_applet/C | 695 | 272 | .60863309352517985611 |
gnome-search-tool/zh_CN | 694 | 271 | .60951008645533141210 |
gucharmap/C | 708 | 276 | .61016949152542372881 |
gnome-search-tool/zh_HK | 678 | 264 | .61061946902654867256 |
gnome-cd/de | 705 | 273 | .61276595744680851063 |
gnome-cd/ja | 705 | 273 | .61276595744680851063 |
grecord/es | 705 | 272 | .61418439716312056737 |
gnome-search-tool/ja | 681 | 262 | .61527165932452276064 |
fish/es | 632 | 243 | .61550632911392405063 |
gnome-cd/es | 706 | 271 | .61614730878186968838 |
same-gnome/C | 615 | 236 | .61626016260162601626 |
modemlights/C | 696 | 267 | .61637931034482758620 |
grecord/ja | 710 | 272 | .61690140845070422535 |
fish-applet-2/ja | 671 | 257 | .61698956780923994038 |
grecord/fr | 718 | 273 | .61977715877437325905 |
gnect/C | 703 | 266 | .62162162162162162162 |
gnome-dictionary/uk | 696 | 263 | .62212643678160919540 |
gnome-netstatus/es | 680 | 255 | .62500000000000000000 |
window-list/C | 730 | 272 | .62739726027397260273 |
grecord/de | 741 | 275 | .62887989203778677462 |
clock/sr | 613 | 227 | .62969004893964110929 |
grecord/sv | 741 | 274 | .63022941970310391363 |
gdm/zh_CN | 722 | 266 | .63157894736842105263 |
gdm/it | 698 | 257 | .63180515759312320916 |
gnome-system-log/sv | 862 | 317 | .63225058004640371229 |
grecord/zh_CN | 730 | 268 | .63287671232876712328 |
gnome-search-tool/fr | 725 | 266 | .63310344827586206896 |
drivemount/C | 630 | 231 | .63333333333333333333 |
imswitcher/C | 634 | 232 | .63406940063091482649 |
gnotski/C | 723 | 264 | .63485477178423236514 |
gnome-netstatus/C | 657 | 239 | .63622526636225266362 |
gtali/C | 712 | 259 | .63623595505617977528 |
gnome-netstatus/it | 649 | 236 | .63636363636363636363 |
gnome-netstatus/zh_CN | 647 | 234 | .63833075734157650695 |
gnobots2/it | 651 | 235 | .63901689708141321044 |
clock/es | 627 | 225 | .64114832535885167464 |
gdm/ko | 742 | 266 | .64150943396226415094 |
gnotravex/C | 670 | 240 | .64179104477611940298 |
grecord/ko | 766 | 273 | .64360313315926892950 |
gnome-netstatus/ja | 657 | 233 | .64535768645357686453 |
gnome-system-log/it | 1010 | 358 | .64554455445544554455 |
gnome-dictionary/C | 756 | 267 | .64682539682539682539 |
gnome-cd/zh_TW | 759 | 268 | .64690382081686429512 |
clock/pa | 653 | 230 | .64777947932618683001 |
brlmonitor/C | 565 | 199 | .64778761061946902654 |
gnome-dictionary/ja | 759 | 267 | .64822134387351778656 |
clock/zh_TW | 586 | 206 | .64846416382252559726 |
gnome-netstatus/ko | 666 | 234 | .64864864864864864864 |
gnome-netstatus/zh_HK | 666 | 234 | .64864864864864864864 |
gnobots2/es | 664 | 233 | .64909638554216867469 |
gnome-netstatus/zh_TW | 668 | 234 | .64970059880239520958 |
gnome-system-log/fr | 892 | 312 | .65022421524663677130 |
clock/ko | 593 | 206 | .65261382799325463743 |
fdl/es | 783 | 272 | .65261813537675606641 |
gtik2_applet2/C | 689 | 239 | .65312046444121915820 |
gnome-system-log/C | 752 | 260 | .65425531914893617021 |
clock/C | 660 | 228 | .65454545454545454545 |
gnome-netstatus/fr | 680 | 233 | .65735294117647058823 |
clock/zh_CN | 596 | 204 | .65771812080536912751 |
fish-applet-2/de | 626 | 214 | .65814696485623003194 |
gnome-feedback/eu | 563 | 192 | .65896980461811722912 |
gnome-cd/zh_CN | 800 | 272 | .66000000000000000000 |
gpl/eu | 700 | 238 | .66000000000000000000 |
clock/ja | 592 | 199 | .66385135135135135135 |
clock/uk | 613 | 206 | .66394779771615008156 |
mixer_applet2/C | 605 | 203 | .66446280991735537190 |
gnome-pilot/C | 627 | 208 | .66826156299840510366 |
clock/de | 604 | 199 | .67052980132450331125 |
gnome-system-log/zh_CN | 976 | 320 | .67213114754098360655 |
brlmonitor/es | 601 | 197 | .67221297836938435940 |
accessx-status/es | 608 | 198 | .67434210526315789473 |
clock/sv | 616 | 198 | .67857142857142857142 |
gdm/ja | 818 | 262 | .67970660146699266503 |
fish/C | 645 | 205 | .68217054263565891472 |
gnome-volume-control/C | 763 | 242 | .68283093053735255570 |
gnome-netstatus/de | 670 | 212 | .68358208955223880597 |
gswitchit/C | 632 | 199 | .68512658227848101265 |
gfloppy/nl | 664 | 207 | .68825301204819277108 |
gnome-keyring-manager/C | 585 | 182 | .68888888888888888888 |
gnome-system-log/uk | 794 | 247 | .68891687657430730478 |
lgpl/C | 656 | 203 | .69054878048780487804 |
geyes/C | 637 | 196 | .69230769230769230769 |
gnome-system-log/ja | 905 | 277 | .69392265193370165745 |
gnome-feedback/C | 641 | 193 | .69890795631825273010 |
gnome-sound-recorder/C | 686 | 203 | .70408163265306122448 |
gpl/fi | 666 | 194 | .70870870870870870870 |
gnome-system-log/ko | 988 | 284 | .71255060728744939271 |
gstreamer-properties/C | 690 | 197 | .71449275362318840579 |
gnome-netstatus/sv | 669 | 191 | .71449925261584454409 |
gpl/pa | 673 | 192 | .71471025260029717682 |
clock/nl | 666 | 183 | .72522522522522522522 |
gtali/da | 697 | 190 | .72740315638450502152 |
gpl/C | 746 | 193 | .74128686327077747989 |
gnome-system-log/zh_TW | 1006 | 236 | .76540755467196819085 |
gnome-system-log/es | 1306 | 248 | .81010719754977029096 |
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]