[xslt] slow key lookup in libxslt-1.1.22




Hi,

I am getting a huge slowdown after moving from libxslt-1.1.15 to version 1.1.22 . I compiled both versions on the same machine, against the same libxml2 (2.6.30). The .xsl, .xml, profiles, and other files needed for re-running are at http://kti.ms.mff.cuni.cz/~urban/zfmodel1_ex/ .

The timings are:

time ../xsltproc.1.1.22 --load-trace --profile addabsrefs.xsl zfmodel1.xml > /dev/null 2>profile.1.1.22

real    1m40.778s
user    1m40.650s
sys     0m0.120s

time ../xsltproc.1.1.15 --load-trace --profile addabsrefs.xsl zfmodel1.xml > /dev/null 2>profile.1.1.15

real    0m3.679s
user    0m3.560s
sys     0m0.110s

About 30 times slower. The profiles (and experimenting) suggest a bottleneck in a key lookup in the "abs" function, which basically just takes a name of a key $k (one letter code) and looks up an element using its number $nr: "key($k,$nr)".

Any ideas what might be going on?

Thanks a lot,
Josef Urban


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]