Setting the stage: Today's XSLTC translets perform abysmally on the 'dbonerow' benchmark. The XML document is a set of 10^4 records and the stylesheet contains one template designed to match (and process) one of the records; XSLT essentially performs a search by matching.
On my machine 10 iterations of 'dbonerow' take Saxon/XT/Xalan approx. 20 sec compared to 7 times longer for a translet. The time loss is so huge that XSLTC looses all gains from other tests and comes last. Towards a better tomorrow: I have rewritten XSL as follows: <xsl:template match="row[id = '0432']"> stuff </xsl:template> to <xsl:template match="row"> <xsl:if test="id = '0432'"> stuff </xsl:if> </xsl:template> Now Saxon/XT/Xalan still need around 20 seconds (although they too prefer the second variant). A translet, however, takes only 0.5 second (or even 68msec w/o printing output). Used to be 7 times slower -- now is 40 times faster. This is shocking! with this rewrite the magic numbers in my environment are: XSLTC 780 XT 482 Saxon 304 XalanJ 207 Obviously, the compiler is doing something VERY WRONG for this test (and presumably for 'patterns', 'decoy', etc.) So there is hope. Fixing the problem will not be easy; not only I've forgotten many implementation details, but the code has changed since I last worked on it (not always to my liking :-( ) --Jacek __________________________________________________ Do You Yahoo!? Yahoo! Sports - Coverage of the 2002 Olympic Games http://sports.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]