The performance of the VM doesn't actually matter that much in a long-running application. It might make the code generation cycle faster (leading to faster start-up time, but not if it takes time to optimize the VM) or GC's to happen faster, but the VM code takes up typically less than 10% (usually far less than 10%) of the overall application performance time, so even if you double the performance of the VM, you will only get a small improvement in overall application performance.
Bob On 5/11/05 6:49 PM, "Kev Jackson" <[EMAIL PROTECTED]> wrote: > First post so be kind! > > I was thinking about this last night after reading some posts. Current > VM's use JIT or dynamic profiling/performance optimisation techniques to > improve the code running on them, but this only applies to application > code. Would it be possible to write the VM in such a way as the VM > itself is able to be optimised at runtime? > > This would essentially mean that each application would be running on > it's own custom VM. Ok it's a non-trivial proposition, but with enough > initial thought I'm pretty sure something like this could be written. > Whether or not it's a good idea - well that remains to be seen. > > To accomplish this I would think that the majority of the VM would have > to be written in a highly dynamic language (lisp-like) to allow for > run-time modification, with a small core algorithm in C to handle the > optimisation of the VM. I would also suggest using lisp to write the > basic tools, not because I know lisp inside out, but because it's a > language that fits the problem domain of writing other language > interpreters/compilers extremely well. > > Just some thoughts, is this possible/useful? > > Kev > --
