(just to make sure everyone's on the same page, given the title of
this thread -- these are not javac optimizations)

I do think it's worth cataloging recommended JVM flags for runtime
use. My current recommendations are:

-server
-da -dsa (I think these are redundant since assertions are off by
default but...)
-XX:+NewRatio=9 (for CF code this tunes for more long-lived objects)
-XX:+UseParallelGC -XX:+UseParallelOldGC (nice win for multiprocessor machines)

Of course the right flags vary according to usage. It's important
enough to performance to publish recommendations.

While it may be true that one could get a 2x speedup by better
algorithms, I don't see that it follows that a 10% win just by adding
the right JVM flags is somehow not useful. 10% is certainly nothing to
sneeze at IMHO, for a couple seconds of change to a script. Right?

On Fri, Sep 4, 2009 at 7:15 PM, Ted Dunning<ted.dunn...@gmail.com> wrote:
> In java 1.6 (recent releases) the AggressiveOpts flag does some escape
> analysis and other optimizations that could help some kinds of code.
>
> See
> http://java.sun.com/performance/reference/whitepapers/tuning.html#section4.2.4
>
> My own feeling is that changes less than 2x in performance are not very
> exciting since there are definitely 2-10x opportunities available to us by
> algorithmic and structural changes.  Changes with less 10% or less impact
> are distractions at this point.  Remember 10% is just a few months of
> Moore's law.

Reply via email to