The XML parser benchmark that we released, XMLTest is designed as a server side benchmark and appropriate Java tunings should be applied to obtain optimal performance. This is especially true if you use this benchmark to compare the performance of different parsers.As he offers tunings for 32-bit Windows, the obvious question is: What tunings would be appropriate for other operating system/JVM combinations?
At the minimum, use the following Java options when you run these tests on 32-bit Windows: -server -Xmx -XX:+UseParallelGC
-
Java Tunings for Server Side XML Processing (4 messages)
- Posted by: Joseph Ottinger
- Posted on: February 28 2006 09:53 EST
In "Java Tunings for Server Side XML Processing," Binu John offers a set of JVM parameters (and a reference to XMLTest, which helps provide some tuning information) to aid in processing XML on the server-side, a definite requirement for the growing set of applications that use web services.Threaded Messages (4)
- Java Tuning White Paper by Binu John on February 28 2006 13:43 EST
- That is Sun dissing Intel, has nothing to do with XML by Scott Stirling on February 28 2006 14:37 EST
- Oops by Scott Stirling on February 28 2006 14:40 EST
- Java Tunings for Server Side XML Processing by Henrik Stahl on March 01 2006 03:25 EST
-
Java Tuning White Paper[ Go to top ]
- Posted by: Binu John
- Posted on: February 28 2006 13:43 EST
- in response to Joseph Ottinger
The Java Tuning White Paper is a great reference for Java performance tuning information. This document includes several new performance options that are available in Java SE 1.5.0_06.
- Binu -
That is Sun dissing Intel, has nothing to do with XML[ Go to top ]
- Posted by: Scott Stirling
- Posted on: February 28 2006 14:37 EST
- in response to Joseph Ottinger
The minimum recommendation shown here has nothing to do with XML. As of JDK 5.0 on Intel machines, the default JVM is *always* the client VM and the default GC algorithm is always serial. That is even with the new "server-class machine detection" feature in the JVM launcher. Yes, even though the JDK can now detect that your Intel box has, e.g., dual CPUs and 2GB of RAM, it will launch the client VM with serialGC by default, regardless of OS. This is not the case for Windows or Linux on AMD, so it seems like either Sun wanted to diss Intel or there was some technical difficulty with reliably setting these properties dynamically.
See: http://java.sun.com/j2se/1.5.0/docs/guide/vm/server-class.html
And: http://java.sun.com/j2se/1.5.0/docs/guide/vm/gc-ergonomics.html -
Oops[ Go to top ]
- Posted by: Scott Stirling
- Posted on: February 28 2006 14:40 EST
- in response to Scott Stirling
Now that I read the link I see that this is really just someone repeating what's in those docs. Moving on . . . -
Java Tunings for Server Side XML Processing[ Go to top ]
- Posted by: Henrik Stahl
- Posted on: March 01 2006 03:25 EST
- in response to Joseph Ottinger
This is an old but quite good benchmark from Sun...
For JRockit, you can find the tuning guide here:
http://e-docs.bea.com/jrockit/geninfo/conftune/memory.html#998984
Reference manual:
http://e-docs.bea.com/jrockit/jrdocs/refman/index.html
I would start with simply setting -Xms==-Xmx and use -Xgc:parallel, to shorten the warmup time. Incidentally, I get quite good performance on my laptop using JRockit 5.0 R26 and these options.
Cheers,
Henrik Ståhl
BEA JRockit team