~/talk

Kotlin on CRaC – new JVM features to speed things up

Talkat droidcon Berlin 2025 · 2025-09-24..09-26· [java, kotlin]
slides:none on file

Shows concrete numbers and how to reproduce them: CRaC (Coordinated Restore at Checkpoint) with an Azul Zulu CRaC JDK on Linux plus Docker cuts a Spring Boot Kotlin app from ~2.7s cold start to ~0.5s restore (benchmarks sometimes hit ~100ms) using Siege-driven warmup and a saved checkpoint; JEP 483 AOT class loading and JEP 515 AOT method profiling produce an AOT cache that drops a Spring run from ~2.1s to ~1.15s; mocking demo goes ~500ms → ~40ms; limitations: Linux-only CRaC, CRaC requires close/open hooks, AOT needs stable jar-only classpaths so Gradle workflows need workarounds.

AI-written summary · about

  1. 0:00JVM performance challenges
  2. 3:12Slow JVM startup reasons
  3. 8:50What is CRaC and how it works
  4. 12:00Live CRaC demo with Spring Boot
  5. 21:27CRaC backend benefits
  6. 22:32CRaC for unit tests
  7. 26:47AOT cache benefits
  8. 31:49CRaC with Gradle tests
  9. 37:47Future JVM performance
  10. 39:12Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.