Am 02.02.2010, 21:11 Uhr, schrieb Eero Tamminen <oak@helsinkinet.fi>:
It's not really an interpreter it's more a JIT-compiler. At least it's big brother .net. The programs run at roughly 90% of the speed of native compiled versions. But that's not something I really need on atari, to make this clear.JIT is no magic bullet.
Nobody claims that.
JIT doesn't optimize the native code it produces nearly as well as a real compiler, for obvious performance reasons (GCC can do compiles slowly,JIT would be useless if it would spend as much time analyzing & optimizingthe code).
How much runtime-speed-increase would you expect from -O2 vs. -O0 on a normal program? 50%? I estimate max. 15%, but I don't really know.
That's why .net has every thinkable task in libs, and if you still have something speed-relevant you can use compiled dlls or similar. I once made a simple benchmark with lots of floating-point and string-ops and compiled with borland-c and c#: No significant difference in speed.
JIT will also use more memory (to stored the translated code) and usually slows down startup. If the code repeats same things often, then it can
On atari you would then have to wait 30 minutes until your app starts - so what? ;)
-- Helmut Karlowski