~/talk

An Introduction to JVM Performance

Talkat JavaDay Lviv 2016 · on Friday, 2016-07-22· [java]
slides:none on file

Explains how HotSpot turns bytecode into machine code via levels of JIT profiling and monomorphic call sites so that tiny changes (one extra runtime type) can break inlining and slow a program hugely — example: rewriting a batch to use fewer runtime types drops runtime from ten hours to four minutes. Covers escape analysis, branch-prediction effects, and why logging and megamorphic utilities kill optimizations. Shows practical tools and flags: JMH for benchmarks, JITWatch and async-profiler/Flight Recorder plus -XX compilation prints.

AI-written summary · about

  1. 0:00Introduction
  2. 3:00Performance disclaimer
  3. 5:00The basics
  4. 7:10The life cycle
  5. 15:22The most crucial optimization
  6. 17:30Why call a method expensive
  7. 21:28Speculative Optimization
  8. 23:05Linked Calls
  9. 24:07Virtual Method Process
  10. 27:04Inlining
  11. 28:52Avoiding types
  12. 32:06Example
  13. 32:45Alternative
  14. 34:15Lock Methods
  15. 39:56JavaScript
  16. 44:06Ifelse
  17. 49:08Object Allocation
  18. 52:36Benchmarks
  19. 56:51Conclusion
~/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.