Using an interpreter (simulator) adds quite a bit of
execution overhead. A common solution for high-performance JVMs is
to use dynamic translation or just-in-time (JIT) compilers. In that
case, the runtime system will notice a method has been called
enough times to make it worthwhile to generate machine code for
that method on the fl