Here are some of my observations:

Things that do NOT change between implementations:
--------------------------------------------------------------------------------
AbstractSAXParser parsing time (45 and 50% of the total time)
Writing information with ByteArrayAccessibleOutputStream (25 and 30% of the
total time)
Dictionary Creation (small amount of time)

Things that DO change:
--------------------------------------------------------------------------------
The alternate method must traverse the nodes twice. The original did this
in one pass.
The alternate method makes fewer copies (30% less).
The alternate stores additional structure details for later processing.


The rest of the programming is basically shuffled around to make the
alternate process work.

On Wed, Feb 19, 2014 at 6:13 PM, Till Westmann <[email protected]> wrote:

> Ok, so this is actually quite a bit slower.
> Do you see an indication what is slow about it?
>
> Till
>
>
> On Wed, Feb 19, 2014 at 5:54 PM, Eldon Carman <[email protected]> wrote:
>
> > The alternative SAX content handler does fewer copies by ~30%. Yet the
> > reduce copy time does not save more than the introduced overhead to track
> > nodes for the single copy.
> >
> > Deep XML Tree
> > original      228 copies
> > alternative 167 copies
> >
> > Micro XML Tree
> > original      30 copies
> > alternative 19 copies
> >
> > The alternate query times:
> >
> > Whole Execution Time (start up, compile, 10 queries executed)
> > Time in minutes and seconds.
> >
> > Query q00 (500mb)
> > ---------------
> > 4m24.469s VXQuery - 1 partition
> > 2m26.115s VXQuery - 2 partitions
> > 1m34.063s VXQuery - 4 partitions
> >
> > Average Execution time (average of 4-10 queries executed)
> > Time in milliseconds.
> >
> > Query q01 (500mb)
> > ---------------
> > 24,724ms VXQuery - 1 partition
> > 12,727ms VXQuery - 2 partitions
> >   8,364ms VXQuery - 4 partitions
> >
>

Reply via email to