This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Real Application Report


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]