On Wed, 2006-06-21 at 10:59 +0200, Roman Kennke wrote:
> >   Natively compiling the code doesn't yield much of
> > an improvement over jamVM.  Some interesting results.
> 
> Yeah sure, most of the work is done in native code, so it doesn't really
> matter if the VM is an interpreter, completely compiled or jit.

I believe Sun's OpenGL backend avoids JNI overhead by writing GUI
commands to a queue in some kind of bytecode, and then having a single
native thread pulling the commands off the queue in a loop to call the
underlying toolkit routines.  My understanding is that this worked so
well that they plan on doing the same thing for their other peer ports.

It seems like something like this may be relatively simple to try with
our gtk port as well.  Enumerate each native method and, instead of
calling the native methods directly, simply write the function
enumeration and parameter values to a queue of sorts.  The native
command processor would be pretty simple to write.

Could any of these benchmarks be tested by converting only a handful of
native methods to this alternative implementation?

AG



Reply via email to