[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] Performance comparisons of tree models
- From: Michael Kay <mike@saxonica.com>
- To: xml-dev@lists.xml.org
- Date: Wed, 12 Sep 2012 20:16:41 +0100
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
>
>
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]