[kaffe] tuning kaffe to do well on volanomark in embedded systems?

Dan Kegel dank at kegel.com
Tue Dec 31 17:00:30 PST 2002


Hi folks,
I just built kaffe-1.0.7 updated to cvs libtools (see my previous post)
to run on a PPC750 linux embedded system with 128MB of RAM.
(To do this, you have to build a local copy of kaffe-1.0.7,
and then build a cross-copy by overriding the following environment
variables before configuring:
CC=@CROSS_TOOL at gcc CFLAGS="@TARGET_CFLAGS@" LD=@CROSS_TOOL at ld AR=@CROSS_TOOL at ar 
KAFFEH=@ARCHDIR@/build/bin/kaffeh ac_cv_alignmentof_voidp=4 ac_cv_long_division_broken=yes 
ac_cv_long_long_modulo_broken=no ac_cv_long_modulo_broken=yes ac_cv_strtod_m0_broken=no 
kaffe_cv_signal_one_shot=no
I'm not quite sure about the values of some of those overrides-
do any of them significantly hurt performance?  like the modulo overrides?)

First off, congratulations to Kaffe for making a portable
free implementation of Java available!  I expect to be able
to run Java on several platforms where Blackdown/Sun's JVM
aren't available thanks to you guys!

Now, here's a little performance comparison with Blackdown JRE 1.3.1.
Kaffe uses significantly more RAM, and yields significantly
poorer performance, at least the way I built and ran it.

Before starting the client, 'free' reports 96MB of RAM available (there is no swap).

/opt/kaffe/jre/bin/kaffe -ms8m -mx64m COM.volano.Mark -count 100 -users 10
(e.g. one half the default number of users) works fine, and gives 201 messages/second.
The client and server both take up around 35MB; CPU time is split 2/3 for client,
1/3 for server.

If I try to run with -users 20, I run out of memory.  (Note that one of the
errors is the same one reported last year in
http://www.kaffe.org/pipermail/kaffe/2001-November/007505.html:
kaffe-bin: ../../../kaffe-1.0.7-libtool1.4e/kaffe/kaffevm/ksem.h:113: ksemPut: Assertion `sem->count
== 0' failed.
so perhaps that user was running out of memory, too.

Running the same benchmark on the same hardware with Blackdown JRE 1.3.1
yields a rather more satisfying 11OO message/sec, and
doesn't run out of memory on the default workload (-users 20).

I have run 'strip -g' on all the shared libraries and executables,
I think.  Any suggestions for how to speed up and trim down
kaffe?

Thanks,
Dan

-- 
Dan Kegel
Linux User #78045
http://www.kegel.com






More information about the kaffe mailing list