[kaffe] JamVM on ARM (XScale)
rob.lougher at gmail.com
Tue Oct 12 10:43:49 PDT 2004
Yes, I know the cost of a context switch so it makes it kind of hard
to defend my decision :) It is faster on ARM than other processors
but still heavy.
I use an ancient version of familiar on my iPAQ (version 6?), which as
you said uses floating-point emulation in the kernel. If they're
moving away from that it'll be a good reason to modify JamVM to assume
native methods are compiled with soft floating point (i.e. floating
point values are passed in gprs). It's really trivial, less work than
writing this email! (float same as int return, double same as long).
Have you tried JamVM on familiar or openZaurus?
On Tue, 12 Oct 2004 09:57:02 +0100, S. Meslin-Weber
<steph at tangency.co.uk> wrote:
> Hi Rob,
> On Mon, Oct 11, 2004 at 12:46:02PM +0100, Robert Lougher wrote:
> > The problems that could arise are that I assume floating-point
> > emulation is enabled in the kernel (affects calling-convention). I
> Ah, this could cause issues with some linux distributions for ARM
> (familiar and OpenZaurus) which are switching to soft-float and not
> relying on the kernel to do floating point handling. Note that hybrid
> systems with both types requires a set of core libraries for each
> *-float so on embedded platforms only one should really be there.
> The rationale for this is convincing: 1000% benchmarked improvement in
> float speed. I've had this explained to me (in simple terms):
> "with hard float, a kernel exception gets launched ... which needs
> saving status registers and changing privilege rings ... then jump
> into kernel ... then handle that ... then jump out of kernel ...
> that's slooooooooooow"
> It'd be nice to be able to use JamVM (and other jvms) on these embedded
> distributions too :)
> I've verified that SableVM works fine using soft-float too :)
> Stephane Meslin-Weber Email: steph at tangency.co.uk
> Software Engineer Web: http://odonata.tangency.co.uk
More information about the kaffe