Do I understand correctly that jit starts by calling the java interpreter. In this case, two things happen: jit-code is not optimized, does not wait for the interpreter.

  • I don't know what a "jit code" is - KoVadim
  • one
    The jit compiler can look at the generated machine code and make a new version. - KoVadim
  • and where to read about the work of the JIT compiler, interpreter. PS In my understanding, the jit code is a byte code, I apologize - voipp
  • > PS In my understanding, the jit-code is a byte-code, I apologize then everything becomes even more incomprehensible. > and where to read about the JIT compiler algorithms, start by reading the documentation - docs.oracle.com/cd/E13150_01/jrockit_jvm/jrockit/geninfo/… - KoVadim

1 answer 1

@voipp , what do you mean when writing jit-code is not waiting for the interpreter ?

(I mean you call the jit-code JVM byte code)

In general, most likely it’s fundamentally you understand the essence of the matter correctly.

-

First, the bytecode is interpreted and some statistics are accumulated. After several interpretations of the same bytecode fragment, it is replaced by a call of machine commands created on the fly.

Just type in google

jit компиляция 

and start reading.

Check out Dynamic Compilation and Performance Measurement - IBM