This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
RE: Help for compiling PERFECTLY SPECjbb2000 with gcj
- From: "Boehm, Hans" <hans_boehm at hp dot com>
- To: "'Tony Reix'" <Tony dot Reix at bull dot net>, java at gcc dot gnu dot org
- Cc: Tony dot Reix at frec dot bull dot fr
- Date: Wed, 27 Aug 2003 10:19:11 -0700
- Subject: RE: Help for compiling PERFECTLY SPECjbb2000 with gcj
I have also run SPECjbb java code with gcj occasionally in the past, on X86 and IA64. My results have been roughly similar (and of course invalid according to the run rules).
I've found that the benchmark is very sensitive to floating point rounding and, at least in the past, gcj hasn't always strictly followed the rules on X86. (It looked to me like this fp sensitivity is in part accidental, but that doesn't really matter.) I've had somewhat better luck on IA64. Gcj has occasionally failed some of the other sanity checks in SPECjbb, but those problems seem to come and go, and have mostly disappeared. I haven't tried with 3.3.1 specifically.
As far as performance goes, there are a few known issues. Off the top of my head:
1) Gcj hasn't been tuned for SPECjbb. I still have a few String patches in my tree that might help it a bit, and might even be generally useful. But I think a lot more could be done by tweaking hot code in libgcj.
2) Static linking helps more than I would like.
3) Increasing the initial heap size helps, but probably less so than on other platforms. The collector doesn't seem to be a bottleneck. (--enable-parallel-mark is recommended on multiprocessors.)
Hans
> -----Original Message-----
> From: Tony Reix [mailto:Tony.Reix@bull.net]
> Sent: Wednesday, August 27, 2003 9:05 AM
> To: java@gcc.gnu.org
> Cc: Tony.Reix@frec.bull.fr
> Subject: Help for compiling PERFECTLY SPECjbb2000 with gcj
>
>
> Hi,
>
> I've been able to compile and run the SPECjbb2000 java code with gcj.
> But I still have some (small) problems at run time, showing some
> incompatibility with Java standards.
> I'd like to get some help from a gcj developer to understand what
> are the causes of these gcj problems.
> Who can help ?
>
> (Since SPECjbb2000 is under license, I CAN'T give the .class
> or .java files ...).
>
>
> For people interested with performances, I've found that SPECjbb2000
> compiled with gcj 331 (and -O2) seems only 60 % of the Sun JVM 1.4.2
> perfs and only 55 % of IBM JVM 140 perfs:
> gcj 331 : 12037 ops/s
> Sun 142 : 19500 ops/s
> IBM 140 : 21700 ops/s
> (This is a preliminary and unofficial measure of gcj with
> SPECjbb2000.)
>
> Done on a 2xia32 (RedHat 9 , 2.4.20-8smp) 1.266 GHz and 512K
> cache, gcc 3.3.1 .
>
> Running SPECjbb2000 with gcj 331 loaded the machine at 92 % and
> the load was well balanced on the 2 CPUs.
>
>
> Thanks,
>
> Amicalement/Regards,
>
> Tony Reix
>
> Carpe Diem
>