xsl-list
[Top] [All Lists]

Re: [xsl] Here's how to benchmark your XSLT program's execution time

2014-11-06 23:57:27
Hi all,

oXygen provides a profiling UI around the information we gather by registering as a trace listener to the XSLT engine, showing hot spots
http://oxygenxml.com/doc/ug-editor/#topics/hotspots-view.html
and the invocation tree
http://oxygenxml.com/doc/ug-editor/#topics/invocation-tree-view.html

A short video on this (<5min) is available in our videos section:
http://oxygenxml.com/demo/XSLT_Profiling.html

Best Regards,
George
--
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com

On 06/11/14 17:16, Michael Kay mike(_at_)saxonica(_dot_)com wrote:

Order of evaluation is undefined in XSLT, and there is no guarantee
that $start is evaluated before the apply-templates call is evaluated.

Yikes!

So how do I write the XSLT program so that it is guaranteed that $start will be 
evaluated before the apply-templates call is evaluated?

There is no guaranteed-portable way of doing this. Doing an xsl:message that 
references $start before the apply-templates call would increase your chances; 
but there's still no guarantee that $start won't be evaluated much earlier, 
e.g. at compile time.

A safer way to get timing information with Saxon is to use a TraceListener. 
This is what the Saxon profiler (command line option -TP) does.

Michael Kay
Saxonica


--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>