[kaffe] SPEC JVM98 Failure with current CVS Sources
Dalibor Topic
robilad@yahoo.com
Thu, 3 Oct 2002 11:55:00 -0700 (PDT)
Hi Kevin,
--- "Kevin D. Kissell" <kevink@mips.com> wrote:
> The new build from CVS (with my MIPS patch)
> passes all the regression tests, including the new
> CatchLimits.class.save test, but it fails the SPEC
> JVM98 _200_check sanity check, on the
> testObjectArray test, blowing out with:
>
> java.lang.ArrayStoreException: not arrays
>
> This arose from an invocation of
> java.lang.system.arraycopy() by the SPEC code.
> I'd provide the whole exception backtrace, but
> the applet console window doesn't allow me to
> cut and paste to an Xterm. :-( I hope that this
> clue would be enough to tell someone who had
> made relevant mods between 1.0.7 and today
> where they should re-check their work.
It was me who made the modification. I merged in the
pure java System.arraycopy from pocketlinux as it was
pure java and faster on small cases than the native
method invocation. It made a noticeable difference on
the SciMark benchmark.
In the new code, instanceof destination array is used
to check the type of the array, and call the according
copy loop. I assume that we are mishandling the case
where destination is null, and the check fails for all
types.
Could you confirm that by replacing the throw clause
by a few System.err.println calls with dst and src in
libraries/javalib/java/lang/System.java in method
arraycopy?
> When I overrode the sanity check and forced
> the test harness to run the benchmarks anyway,
> they all run to completion, mostly with the
> same elapsed time, though interestingly,
> one of them (mtvt) slowed down by 10%.
that's weird. it's mtrt, btw. it's a raytracer running
in two threads. I can not get hold of a copy of
"Characterizing the SPEC JVM98 benchmarks on the Java
virtual machine" by Bowers and Kaeli from my crappy
internet cafe connection, you might have more luck.
It's on citeseer.
> I cannot redistribute my copy of the SPEC
> code, of course, but I'd recommend that as
> many kaffe developers as possible arrange
> to get a copy, at least of the JVM98 client-side
> Java benchmarks (the server benchmarks are
> much more expensive for some reason).
SpecJVM98 check test is available online as a "teaser"
at
http://www.spec.org/osg/jvm98/run.html
it's actually available after you accept their
license, but I didn't want to post that link. On a
futher note, kaffe's appletviewer used to throw an
exception downloading the applet this spring, which
was last time I tried it. That might have been cured
in the mean time.
best regards,
dalibor topic
__________________________________________________
Do you Yahoo!?
New DSL Internet Access from SBC & Yahoo!
http://sbc.yahoo.com