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

Re: XSLTPROC performance

Subject: Re: XSLTPROC performance
From: Colin Paul Adams <colin@xxxxxxxxxxxxxxxxxx>
Date: Fri, 21 Dec 2007 15:37:59 +0000
Re:  XSLTPROC performance
>>>>> "Andrew" == Andrew Welch <andrew.j.welch@xxxxxxxxx> writes:

    Andrew> On 21/12/2007, Colin Paul Adams <colin@xxxxxxxxxxxxxxxxxx> wrote:
    >> >>>>> "Andrew" == Andrew Welch <andrew.j.welch@xxxxxxxxx>
    >> writes:
    >> 
    Andrew> On 21/12/2007, Colin Paul Adams <colin@xxxxxxxxxxxxxxxxxx> wrote:
> >> The cost of the JVM start-up cannot be eliminated, but it can
    >> >> be amortised. For a fair comparison, you need to know what
    >> this >> overhead is, so you can make sensible judgements.
    >> 
    Andrew> I don't think it needs to be amortised... If you start the
    Andrew> timing at the correct point and ignore the first few runs
    Andrew> then I'd say you can safely forget about JVM startup and
    Andrew> warm-up for the remaining runs.
    >> 
    >> Then you've ignored it completely, so you don't get a fair
    >> comparison.

    Andrew> aahhh I see what you mean.... (the penny drops :)

    Andrew> I don't agree though - if you are comparing say Gestalt
    Andrew> Win32 version with Saxon running on Windows, then surely
    Andrew> it's only really fair to make the comparison after the
    Andrew> Java bytecode has become native machine code - after JVM
    Andrew> startup.

That depends upon what you mean by fair (that is, what are you trying
to measure?).

So, if what you are interested in is the performance of a web-server
system, then yes, that is probably the only meaningful measurement.
And for Gestalt, you would have to adopt the same methodology, in a
Goanna servlet (although i doubt if it would be significant, but I
have never measured it, so i could be very wrong).

If you workload (which is typically what I use XSLT for, but I am very
probably highly atypical, as I don't use XSLT much at all these days,
except for testing) is occasionally transforming gobodoc xml into an
html page, then ignoring the JVM start-up time would give me an absurd
conclusion, as it completely dominates the overall run-time.

In general, the run-time of an XSLT processor is going depend upon the
sum of a number of factors. For a Java-based processor, the JVM
warm-up time is such a factor (it is some kind of non-constant
workload-dependent function).
So to fully characterize the performance, you are going to need to specify a
number of parameters. In general, I mean. For a given workload,
processor comparisons are generally much simpler to do.

The only real value of a general inter-processor benchmark has, I
think, is to give a prospective user an idea of which processors to
measure against their own workloads. But still, I find it an
interesting topic (for about 9 years my principle job was a
performance analyst on mainframe systems).
-- 
Colin Adams
Preston Lancashire

Current Thread

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
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.