Re: Is Java 1.6 number crunching slower than 1.5?
On Sat, 15 Aug 2009, Robert Klemme wrote:
On 15.08.2009 13:18, Tom Anderson wrote:
On Fri, 14 Aug 2009, Kevin McMurtrie wrote:
I pulled out a few bits of code and patched it together so a test case
does the same kind of math as the real deal. (Don't be a style freak -
it's demo fragment squished to fit in a Usenet posting.)
Machine:
MacOS X 10.5.8
Darwin desktop.pixelmemory.us 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul
15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
---------------
Java 1.5
Version:
java version "1.5.0_20"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_20-b02-308)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_19-137, mixed mode)
Options: -d64 -mx2G
Output:
Millis: 5979.04
Millis: 5984.168
Millis: 5987.027
Millis: 5979.992
Millis: 5953.974
---------------
Java 1.6
Version:
java version "1.6.0_15"
Java(TM) SE Runtime Environment (build 1.6.0_15-b02-215)
Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-87, mixed mode)
Options: -d64 -mx2G
Output:
Millis: 6943.407
Millis: 6937.324
Millis: 6917.524
Millis: 6931.662
Millis: 6917.065
Zoinks. I'd suggest filing a bug report with Sun - that is a substantial
performance regression.
Maybe Sun optimized the JVM in other areas (e.g. IO bandwidth and throughput)
which are more important for the average server application today.
Doubtless. But they've still slowed down integer array maths of the kind
you're doing.
Maybe the optimization kicks in later.
Perhaps - you could try that, right? Just change the top loop to a
while(true), fire the test off and leave it running overnight.
I am not convinced that what we have seen constitutes a bug.
It's not a bug, no, but it *is* a performance regression. How about
telling Sun and letting them decide if it's a problem?
That said, they must know about it - i doubt they make a release without
doing fairly thorough benchmarking.
Besides, if you report it, they may suggest a fix to make it faster under
1.6 - a VM flag, or code patterns to avoid or something.
tom
--
Argumentative and pedantic, oh, yes. Although it's properly called
"correct" -- Huge