View Single Post
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#102
Originally Posted by zimon View Post
When there is an application, which needs lots of "short" living dynamic memory, and needs to run relatively long time, for example www-browser with tab-support; JIT-interpreted code (Java) will be eventually faster than fully compiled code (C, C++).

Most of the already known running-time profiling+optimizing techniques are not yet implemented nor in use in VMs. Just think VM able to reorganize memory objects in heap memory so L2-cache usage is optimized. That trick cannot be made to fully compiled code, but can be made to bytecode based running programs.
What noone says is that there's an attached memory cost on this. Memory might be cheap on desktops (I'd disagree) but not yet on mobile... And, you know, if I were to waste more memory most algorithms have better ways to do it.

The other statement, that it can't be done to fully compiled code, is plain wrong. Previous week I was watching Intel-made slides about how there's various research teams trying to do exactly that (and some more optimizations that you can do when you start getting runtime information).

In fact, Transmeta used to do that (as attila already pointed out).

Last edited by javispedro; 2011-02-08 at 01:10.
 

The Following User Says Thank You to javispedro For This Useful Post: