Improving the JNode compiler.
JNode needs a better, faster native-code compiler. My gut feeling is that JNode runs Java code roughly an order of magnitude slower than the best Java implementations do. This impacts on most areas of JNode performance, with the long startup time for the JNode GUI, and running garbage collection being two of the most obvious examples.
So I want us to start thinking about improving the JNode compiler. Here are some questions to start the discussion:
- Can we improve the existing compiler, or would we do better starting from scratch?
- Is there an existing compiler we could port? (I looked at Jikes RVM, but I think that we would run into licensing problems. This is not to say that we cannot borrow ideas though ...)
- Do we want to continue with the current strategy of compiling to native code before executing, or should we adopt the mixed interpret/compile strategy used by Sun and Jikes?
- Does anyone know a good place to start learning about code generators / optimizers?