AMD-64 systems and Java performance

D

Dean Schulze

Does anyone have any comparisons or benchmarks for compiling and running
Java programs on AMD-64 systems compared to 32-bit Intel systems?

I'm considering buying an AMD-64 notebook which will run Windows XP Pro.
I believe the 64-bit support for XP was just released (or release is
imminent). I haven't seen a 64-bit JDK for the AMD-64 based systems
yet, though so initially I'll be using the 32-bit JDK.

I'm wondering if the 32-bit based javac and java run as a function of
clock-speed only or if they can take advantage of some features of the
64-bit hardware. Since the AMD-64's CPU clock-speed is slower than
comparable Intel CPUs I worry that the AMD-64 based systems may actually
be slower for compiling and running Java programs than comparable 32-bit
Intel hardware.

Thanks.
 
F

Frank

Dean said:
Does anyone have any comparisons or benchmarks for compiling and running
Java programs on AMD-64 systems compared to 32-bit Intel systems?

I'm considering buying an AMD-64 notebook which will run Windows XP Pro.
I believe the 64-bit support for XP was just released (or release is
imminent).

Don't know about that.. There's a beta out, but it's ridden with bugs
and driver support is abysmal.
I haven't seen a 64-bit JDK for the AMD-64 based systems
yet, though so initially I'll be using the 32-bit JDK.

There's AMD-64 support in Java 1.5, check out RC1. I have no idea how it
performs, though, don't have the balls (or time) to dig up a 64-bit
linux platform and check it out.
I'm wondering if the 32-bit based javac and java run as a function of
clock-speed only or if they can take advantage of some features of the
64-bit hardware. Since the AMD-64's CPU clock-speed is slower than
comparable Intel CPUs I worry that the AMD-64 based systems may actually
be slower for compiling and running Java programs than comparable 32-bit
Intel hardware.

The main advantage of 64-bit CPUs on any sane platform is getting access
to more than 2-4GB RAM, which doesn't help much atm except for on pretty
large servers.

X86 is a shitty piece of architecture, though, and the AMD64 does a
little mending to the worst x86 deficiency, namely doubling the number
of general purpose registers which was merely 8 before, while anything
else has had at least 32 for decades.

It also doubles the amount of simd registers, effectively deprecating
the silly stack based fpu.

I've heard the changes will yield anything from 0% to 50% performance
improvement compared to the same code compiled for 32-bit mode, but
never saw any actual benchmarks.. 20-30% seems a reasonable estimate IMO.

There are a few other neglible improvements as well, but these are
likely to be eaten up by for instance the 10% increased code size of
64-bit apps, which means you'll have more cache misses and so on.

I wouldn't be concerned about clock speeds. Current AMD CPUs outperform
intel's offerings, even at significantly lower frequencies.

-Frank
 
F

Frank

Dean said:
The only thing I've been able to find is this:

http://www.manageability.org/blog/stuff/java-64-bit-amd-opteron

Looks like the extra registers help even with a 32-bit JVM.

Nah, it doesn't have access to the fancy new stuff unless it's running
64-bit programs on a 64-bit os.

It's just performing really well on plain 32-bit code too.
There also
seems to be quite a bit of potential once a 64-bit JDK is available with
good 64-bit support in the OS.

Yup :) Last comment in your link suggested a 100% speed increase over
the 32-bit vm (however the 32-bit jvm was running on a 64-bit os, which
may or may not cause some overhead due to task switching..)

Done some searching myself, but I'm not finding anything authoritative..

What I do know is that amd64 offers the best bang for the buck, even
today, and once you switch to 64-bit there will be a nice speed up.

-Frank
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top