[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Performance comparisons of tree models

  • From: Mike Sokolov <sokolov@ifactory.com>
  • To: Michael Kay <mike@saxonica.com>
  • Date: Wed, 12 Sep 2012 15:27:57 -0400

Re:  Performance comparisons of tree models
You are correct - our current implementation doesn't cache compiled 
XPaths, so that cost was included in the comparison.  I suppose we'll 
want to begin doing that (caching, as we already do for XSLT).

-Mike Sokolov

On 09/12/2012 03:16 PM, Michael Kay wrote:
>
> I think JDOM 1.0 uses Jaxen as its native XPath implementation, so you 
> are comparing JDOM/Jaxen with TinyTree/Saxon, whereas we were 
> comparing JDOM/Saxon with TinyTree/Saxon. Part of the cost of the 
> JDOM/Saxon combination is the bridge from the JDOM model to our 
> internal model: we have to "wrap" JDOM to implement the interfaces our 
> engine works with.
>
> It's also possible that you were including the cost of expression 
> parsing and optimization, whereas we were only measuring execution. 
> For simple XPath expressions run against smallish documents the cost 
> of parsing may well dominate the evaluation cost. For the scenario 
> where simple XPath expressions are issued directly by a Java 
> application and the XML document is small, Saxon probably puts more 
> effort than is justified into compiling and optimizing the expression 
> before execution.
>
> Michael Kay
> Saxonica
>
>
> On 12/09/2012 19:51, Mike Sokolov wrote:
>>
>>
>> On 09/12/2012 01:19 PM, Michael Kay wrote:
>>> I have been doing some performance comparisons of different Java XML 
>>> tree models, as used by Saxon, and the results may be of general 
>>> interest:
>>>
>>> http://dev.saxonica.com/blog/mike/2012/09/index.html#000194
>>>
>>> Of course, this is a measurement of one particular workload and the 
>>> results may not extrapolate to other workloads.
>>>
>>> Michael Kay
>>> Saxonica
>>>
>> What a coincidence ... I have just this week been doing a performance 
>> comparison that is somewhat similar to that.
>>
>> I compared Saxon TinyTree with JDOM's XPath 1.0 implementation in a 
>> common use case for our platform: mapping XML documents to Java 
>> entity objects.  I did find a substantial improvement using TinyTree, 
>> although nothing like the amount that you demonstrate. Our test 
>> involves running a large number of independent XPath expressions.  
>> These expressions are typically simple, involving one or two child 
>> steps and mostly no function calls.
>>
>> I saw a 30-40% improvement moving from Saxon to JDOM (so JDOM numbers 
>> about 1.5 on the scale in your blog post).
>>
>> I'm not sure why the numbers are at such a variance to those you 
>> report, but there are a number of differences between what we've done 
>> that could explain it: I used JDOM XPath with JDOM Documents; I guess 
>> it might be interesting to compare Saxon XPath.  Also, the 
>> expressions we tested were extremely simple, and it seems likely that 
>> differences are less noticeable in that case.
>>
>> At any rate, the difference is significant enough that we will 
>> definitely be moving towards switching our data model to TinyTree.  I 
>> expect to see additional gains beyond what I've measured due to 
>> lowered memory footprint, and we have not yet measured any impact on 
>> XSLT performance, which should also improve substantially based on 
>> what you report.
>>
>> -Mike Sokolov
>>
>> _______________________________________________________________________
>>
>> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
>> to support XML implementation and development. To minimize
>> spam in the archives, you must subscribe before posting.
>>
>> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
>> subscribe: xml-dev-subscribe@lists.xml.org
>> List archive: http://lists.xml.org/archives/xml-dev/
>> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>>
>>
>
>
> _______________________________________________________________________
>
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
>
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> subscribe: xml-dev-subscribe@lists.xml.org
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.