This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Real Application Report
- From: Loren James Rittle <rittle at latour dot rsch dot comm dot mot dot com>
- To: java at gcc dot gnu dot org
- Date: Fri, 14 Jun 2002 04:32:55 -0500 (CDT)
- Subject: Real Application Report
- Reply-to: rittle at labs dot mot dot com
I thought the authors of gcj/libjava might like to know that some
random Java code I wrote now works for me under gcj/libjava. I recall
attempting to compile it with gcj some time ago (probably before
libjava was pulled into the gcc tree; but probably on a platform that
was otherwise considered "supported") without success.
Details: It is a ~10K LOCC Java framework/program with test suite that
I wrote in 2000Q3 against JDK1.[12] (whatever version was available on
FreeBSD and Linux at the time). It uses both reflection and threading
features but not much of the library (only java.io, java.net,
java.util, and java.text). Other than requiring a slight revamp of
the build/run process (i.e. zero code changes, as would be expected),
both gij and "native" builds regression check without error when built
with gcj.
I do not claim to have attempted to tune in any way (and even the RTL
inliner was disabled since I have Bryce's related patch in my tree);
the regression test suite was designed to be logical/functionality
related only; and it starts and stops the VM 10 times (instead of
running under one invocation along with a long-running stress mode)
but here are the current numbers (i386-unknown-freebsd4.6):
JDK1.2.2 (interpreter only), 3.2u+1.0s seconds (est. 1.6u+0.8s is startup time)
gij (gcj -C -O2 -g), 5.6u+2.1s seconds (est. 4.2u+0.5s is startup time)
native (gcj -O2 -g), 4.3u+0.3s seconds (est. 1.5u+0.3s is startup time)
Removing my estimate for base VM startup time in each configuration:
JDK1.2.2 (interpreter only), 1.6u+0.2s seconds
gij (gcj -C -O2 -g), 1.4u+1.6s seconds (see note [1])
native (gcj -O2 -g), 2.8u+0.0s seconds
[1] Interesting system number, thus I wonder if I estimated VM startup
time properly in this configuration.
(In any event, this framework was not CPU-bound thus looking at event
dispatch latency would be far more interesting but I don't have good
hooks to measure it and the code is for a long-dead project...)
Regards,
Loren