Just-in-Time Compilation (JIT)
Definition
Just-in-Time compilation translates code into optimized machine code during program execution.
A runtime can observe frequently executed code paths and compile them dynamically. This causes warm-up costs but often results in better runtime performance than purely interpreted execution.
Simply explained
How to translate text into fast machine language only during use and optimize frequent parts especially.
Why it matters in practice
Relevant for runtimes like JVM, JavaScript engines, and some ML compilers because startup time and sustained performance can differ.
Example from business
A server shows higher latency after startup until hot paths are compiled and optimized.
Limits and pitfalls
- Ignoring warm-up; equating JIT with AOT; measuring benchmarks immediately after process start; overlooking memory consumption.
Origin & history
JIT techniques have been developed over decades in dynamic runtime systems. Modern compiler infrastructures like LLVM offer their own JIT frameworks.
Use in mid-sized companies
- Possible applications: performance analysis of web services, data processing, and dynamic runtimes.
Frequently asked questions
Is JIT the same as AOT?
No, AOT compiles before execution. Why can JIT be faster? It can use runtime information for optimizations.
Sources
- LLVM ORC JIT Documentation · LLVM ORC JIT Documentation
Sources checked on 10.10.2026.
Editorially reviewed on: