Keeping Your Java Hot by Solving the JVM Warmup Problem
summary
Explains concrete fixes: GraalVM native image AOT removes warmup but loses speculative optimization so long-running apps run slower; profiling shows speculative JIT gives over 50% of JIT gains. ReadyNow (Zing) records classes, profiling, deopts and compiled code to restart at ~98% of peak; examples: Spring Boot cold 4,000 ms vs checkpoint restore 38 ms, Micronaut 1,000 ms → 46 ms, Quarkus 990 ms → 33 ms. Proposes JIT-as-a-Service remote compiler with caching and a CRaC checkpoint/restore API; ReadyNow Orchestrator combines profiling store and remote JIT.
AI-written summary · about
chapters (7)
- 0:00Introduction to JVM warmup
- 10:19Ahead-of-time compilation limits
- 23:00Storing JIT compilation data
- 30:04Decoupling the JIT compiler
- 39:15Combining solutions for performance
- 40:41Saving application state with CRaC
- 51:40Summary of JVM warmup solutions
related talks
46mKeeping Your Java Hot by Solving the JVM Warmup Problem
56mKeeping Your #Java Hot by Solving the #JVM Warmup Problem
01h 03mKeeping Your Java Hot.
27mHow to Eliminate Java Performance Warmup
45mWarming up the JVM: CRaC and other tricks
06mSimple Tweaks to Get the Most Out of your JVM
50mAOT or JIT: Faster Startup or Faster Code?
42mTechniques for a faster JVM start-up
