[kaffe] 1.1.0 Interpreter Performance
Kevin D. Kissell
kevink at mips.com
Wed Jun 11 03:51:01 PDT 2003
> > Our of curiousity, I configured the MIPS/Linux interpretive kaffe
> > with --disable-debug, for speed, and ran the Embedded CaffeieneMark
> > benchmark. Comparing the result with an equivalent 1.0.7-based build,
> > we can see that a bunch of things have improved a little, some things
> > have stayed the same, and that something has slowed down dramatically
> > in string handling which more than cancells all the other improvements.
> > [ test results skipped ]
> If you've got some time to waste, it'd be nice if you could
> compare the performance of 1.0.7's System.arraycopy() with
> the performance of 1.1.0's System.arraycopy() (nothing serious,
> just create a huge array and measure how long it takes to
> copy that array).
Before going through the hassle of rebuilding/re-installing to
try your experiment, I thought I'd look at the code. Jeez.
No wonder. In 1.0.7, System.arraycopy() was a native
method, defined in libraries/clib/native/System.c, which used
the platform's memmov/memcpy functions. Now
it's a Java implementation. Certainly easier to maintain
that way, but it's unsurprising if it's more than 5 times slower.
More information about the kaffe