~/talk

Principles of Memory Management in Java

Talkat JavaOne 2026 · 2026-03-17..03-19· [java]
links:none on file
slides:none on file

Explains why all JDK collectors use moving generational collectors and how that lets Java trade RAM for far less CPU: CPU cost scales with allocation rate divided by heap headroom, so doubling heap headroom cuts GC CPU. Gives concrete knobs and measurements: set XMX (default 25% is usually wrong), monitor allocation and GC CPU with JMX and JFR, and add ~100 MB per added core to stop GC spikes in high-allocation benchmarks. Announces dynamic heap sizing for ZGC coming to automate this.

AI-written summary · about

  1. 0:00Java memory management intro
  2. 1:08Memory in computation
  3. 5:00Stack vs heap memory
  4. 6:46Manual memory limits
  5. 11:02GC vs manual management
  6. 15:14Moving GC reduces CPU
  7. 20:35Generational GC explained
  8. 26:55RAM and CPU trade-offs
  9. 31:11Hardware cost split
  10. 35:26Problems with software performance benchmarks
  11. 37:35Heap size optimization
  12. 39:21Moving collectors limits
  13. 41:48Low-latency garbage collection in modern JDKs
  14. 42:51RAM and CPU as resource
  15. 43:37Measuring JDK26 performance
  16. 44:41Automatic heap sizing
~/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.