On 28 Jul 2001 17:00:19 +0100, Sergio Carvalho wrote:
> > I am looking into improving the performance of c2
> > for specific platforms..
> >
> > Following are the queries i have ... they might be
> > silly...but any input is highly appreciated...
> >
> > 1. c2 uses the parser and xslt parser developed in
> > java..
> >
> > 2. Is it possible to use platform specific c++ version
> > of them wrapped around java may be using jni / some
> > other stuff.. Like the wrap arounds are used for java
> > compilers..
> >
> > 3. Shouldnt it improve the performance of c2?(atleast
> > if we know the target application platform)
JNI is not a magic bullet, just because native code is being called
doesn't mean that it will go faster for two reasons:
1. JITs like Sun's HotSpot will compile the entire XML parser to native
code within a few minutes of use
2. There is substancial overhead with calling JNI functions.
For anyone who doesn't believe that the overhead of JNI is that large,
find a copy of "Java Platform Performance" - a book from Sun press.
Section 9.3.2 is a case study on JNI - specifically java.math. In JDK
1.0-1.2 large portions of that library were native code written in C,
but the code was getting very complex. For JDK 1.3 the library was
re-written in Java, and ended up faster - for some operations several
hundred percent faster.
Of course, feel free to do code this if you want - this may be an
example where JNI is a Good Thing. But check the benchmarks for XML
parsers first - IIRC Xalan-C is slower than Xalan-J. MSXML however, is
very fast.
Ross
---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>