[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: how to estimate speed of a transformation
> > one should have the right to expect that for each n the computation is performed > once, and if a template is called with the same value of 'n' repeatedly, it does not > spend time on computing doctitle again. > > The system doesn't have to re-calculate; it could cache the values so if > it sees the same n again, simply re-use it. > That's clear and obvious. What kinds of expressions and when are 'cached' in each of the available processors? Since such 'caching' changes computation complexity, what features should expressions possess to be safely used in this way? For example, for each node in a sequence, will computing following-sibling::*[name()=name(following-sibling::*[1])][2] take twice more time than following-sibling::*[name()=name(following-sibling::*[1])][1]? Or will it take almost the same time? What about 200 and 100 instead of 2 and 1? Results are different with different processors, with constant time in the best case, quadratic time in the worst one. - Is the same time a feature of the language or a clever optimization? - Can I rely on constant time for this expression in my stylesheets? What if in a later version of the same processor this optimization will be dropped due to other concerns? Stylesheets can be long and sophisticated. If it becomes too slow, is it a bug in the algorithm or in the processor? David Tolpin XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|