Re: [Sablevm-user] SableVM question
Brought to you by:
egagnon
From: Marcel A. <ma...@ca...> - 2000-08-29 16:27:22
|
On Tue, Aug 29, 2000 at 11:06:52AM -0400, Etienne M. Gagnon wrote: > meg.com> <200...@ri...> <39A...@j-...> <200...@ar...> > Content-Type: text/plain; charset=us-ascii > Content-Transfer-Encoding: 7bit > Sender: uucp <uu...@ar...> > > Marcel Ammerlaan wrote: > > Ok. I've retested it and the results are much better now for the goto case > > (around 3 times faster) with a real-life example (e.g. newtest1 && newtest2). > > Ah! This is much more in line with the material that can be found on > "threaded interpretation" the literature. > > > I will get my own VM up & running again and use that as a testbed instead > > of simple programs so the compiler won't fool me again:) > > > > I hate assembly and usually avoid it but in a case like this I should have > > checked what GCC did to the code... > > > > > I might still be wrong, so please continue testing and keep us updated > > > on your findings. > > > > I will (for now I'm focussing on the pre-interpretation bit as I've got > > better results when skipping this part and using a lookup table. I will > > investigate:) > > Do not forget that the pre-interpretation phase is a linear phase. > While running a real interpreter, you usually have many loops and > recursion that will make the pre-interpretation phase overhead pretty > insignificant. This phase does nothing as complex as a non-naive JIT > would do. I'm aware of that, I've measured running the code about 40.000 times (versus translation once), the difference between a real VM and the test code is the static nature of the list of instructions. I let you know what the results are (tonight or tomorrow) Marcel Ammerlaan |